一道简单的一元数组的题目总是出错,求大神帮助!

来源:2-4 选择题

yunx

2018-06-21 23:32:59

题目是P2141珠心算测验,代码如下,半AC半WA,十分迷茫:

http://img.mukewang.com/climg/5b2bc4ff0001e40f08570736.jpg

http://img.mukewang.com/climg/5b2bc51a00018b3508340288.jpg

#include <iostream>
using namespace std;
int main(){
	int n,cnt=0;
	int num[n+20],check[n+20];
	cin>>n;
	for(int i=0;i<n;i++){
		check[i]=1;
	}
	for(int i=0;i<n;i++){
		cin>>num[i];
	}
	for (int i=0;i<n-1;i++) {
		for (int j=i+1;j<n;j++) {
			for (int k=0;k<n;k++) {
				if(num[k]==num[i]+num[j] && check[k]==1){
					cnt++;
					check[k]=0;
				}
			}
		}
	}
	cout<<cnt<<endl;
	return 0;
}


写回答

1回答

Tender10

2018-06-22

你这边代码我测试了两种情况,一个是例子4, 1 2 3 4的情况,一个是5,1 2 3 4 5的情况,结果都是正确的,不知道你那边出错的地方是什么呢?

0
huly
回复
hunx
h 你好,建议z在本地编译器编调试,本地调式没有问题即可,祝学习愉快!
h018-06-24
共2条回复

0 学习 · 593 问题

查看课程