【golang】全WA求助。。有无大佬帮忙看下代码的问题所在
查看原帖
【golang】全WA求助。。有无大佬帮忙看下代码的问题所在
475798
wanlxj0429楼主2021/3/10 18:46
package main
import "fmt"
type student struct{
	score [3]int //数据域
	countup int //总计
	next *student //指针域
}
func main(){
	var(
		n int
		i = 0
		j = 0
		k = 0
		head,pr,pw *student
		x [3]int
		count = 0 //用于计数
		skip = 1
	)
	fmt.Scan(&n)
	for i = 0;i < n;i ++{
		pr = new(student)
		if(head == nil){ //若头指针为空,则头指针指向新节点
			head = pr
		}else{ //若头指针不为空,则向后移动直至空指针
			pw = head
			for pw.next != nil{
				pw = pw.next
			}
			pw.next = pr
		}
		//输入信息
		pr.countup = 0
		for j = 0;j < 3;j ++{
			fmt.Scanf("%d",&x[j])
			pr.score[j] = x[j]
			pr.countup += x[j]
		}
		pr.next = nil
	}
	//通过多次循环对链表进行遍历,找出"旗鼓相当的对手"
	pw = head //使pw指向头指针
	for i = 0;i < n - 1;i ++{
		pr = pw.next //pr指向pw便于查找遍历
		for j = i + 1;j < n;j ++{
			skip = 0
			for k = 0;k < 3;k ++{
				kr := pw.score[k] - pr.score[k]
				if kr < -5 || kr > 5{
					skip = 1
					break
				}
			}
			if skip == 0 && (pw.countup - pr.countup) >= -5 &&
				(pw.countup - pr.countup) <= 5{
				count ++
			}
			pr = pr.next
		}
		pw = pw.next //pw向后移动
	}
	fmt.Println(count)
}

2021/3/10 18:46
加载中...