+ -
当前位置:首页 → 问答吧 → c++问题求救

c++问题求救

时间:2011-12-22

来源:互联网

Input:
第一行为组数T ( 1<=T<=10000 ) , 后面输入T组测试数据.每组为一个3*3的整数矩阵,每个矩阵前空一行. 
Output:
对于每一组3*3的矩阵,如果他满足上述九宫格的定义,则输出”Cheers!” 否则,输出”OmyGa!”. 
我的代码
#include<iostream>
#include<string>
#include<vector>
using namespace std;
void main()

  int a[3][3];
int n;
  cin>>n;
 for(int i=0;i<n;i++)
 {  
 
int x=0;
cout<<'\n';
  for(int j=1;j<=3;j++)
  for(int k=1;k<=3;k++)

  cin>>a[j][k];
  for(int l=1;l<=3;l++)
  { 
  if(a[l][1]+a[l][2]+a[l][3]==15)
x++;
  if(a[1][l]+a[2][l]+a[3][l]==15)
x++;
  }
  if(a[1][1]+a[2][2]+a[3][3]==15)
x++;
  if(a[1][3]+a[2][2]+a[3][1]==15)
x++;
  if(x==8)
  cout<<"Cheers!"<<endl;
  else
  cout<<"OMyGa!"<<endl;
 }
}
为什么每次要结束时都报错........而且acm提交是wrong answer

作者: lxq2061971   发布时间: 2011-12-22

数组定义成matrix[3][3] 那么matrix[0][0]就是第一行的第一个元素 懂否 
matrix[2][2]是第三行最后一个元素 你的下表已经越界了

作者: linghuazaii   发布时间: 2011-12-22

下标 更正

作者: linghuazaii   发布时间: 2011-12-22

报错问题解决了,但是貌似程序acm提交还是过不了...

作者: lxq2061971   发布时间: 2011-12-22

Sample Input:
2

2 9 4
7 5 3
6 1 8

1 2 3
4 5 6
7 8 9
Sample Output:
Cheers!
OMyGa!
Source:
浙工大2008C++期终考试 

作者: lxq2061971   发布时间: 2011-12-22