4 条题解
-
2
J4A 宾果游戏
思路
依次判断横排,竖排,正对角线与反对角线是否均为 ,如果是,则输出
Yes
,如果都不是,则输出No
。复杂度
令 为矩阵大小。
时间复杂度:
空间复杂度:
Code
#include <bits/stdc++.h> using namespace std; int a[10][10]; int main() { int n = 5; for (int i = 1;i <= n;i++) { for (int j = 1;j <= n;j++) { cin >> a[i][j]; } } int f = 0; for (int i = 1;i <= n;i++) { int s = 0; for (int j = 1;j <= n;j++) s = s + a[i][j]; if (s == 5) f = 1; } for (int j = 1;j <= n;j++) { int s = 0; for (int i = 1;i <= n;i++) s = s + a[i][j]; if (s == 5) f = 1; } int s = 0; for (int i = 1;i <= n;i++) { s = s + a[i][i]; } if (s == 5) f = 1; s = 0; for (int i = 1;i <= n;i++) { s = s + a[i][n + 1 - i]; } if (s == 5) f = 1; cout << (f == 1 ? "Yes" : "No"); }
-
1
J4A 宾果游戏 题解:
思路:先判断每行每列是否有一行或一列是五个一的,再判断两条对角线。
Code:
#include<iostream> using namespace std; long long n=5,a[10][10]; int main() { for(int i=1;i<=n;i++) for(int j=1;j<=n;j++) cin>>a[i][j]; for(int i=1;i<=n;i++) { if(a[i][1]&&a[i][2]&&a[i][3]&&a[i][4]&&a[i][5]) { cout<<"Yes"; return 0; } //判断每一行 if(a[1][i]&&a[2][i]&&a[3][i]&&a[4][i]&&a[5][i]) { cout<<"Yes"; return 0; } //判断每一列 } if(a[1][1]&&a[2][2]&&a[3][3]&&a[4][4]&&a[5][5]) { cout<<"Yes"; return 0; } if(a[1][5]&&a[2][4]&&a[3][3]&&a[4][2]&&a[5][1]) { cout<<"Yes"; return 0; } //判断两条对角线 cout<<"No"; return 0; }
-
0
Code
{
#include<bits/stdc++.h> using namespace std; #define int long long int a[16][16]; signed main() { for(int i=1;i<=5;i++) { for(int j=1;j<=5;j++) { cin>>a[i][j]; } } int cnt=0; for(int j=5;j>=1;j--) { if(a[j][j]==1) cnt++; } if(cnt>=5) { cout<<"Yes"; return 0; } cnt=0; for(int i=1,j=5;i<=5&&j>=1;i++,j--) { if(a[i][j]==1) cnt++; } if(cnt>=5) { cout<<"Yes"; return 0; } for(int i=1;i<=5;i++) { int ans=0; for(int j=1;j<=5;j++) { if(a[i][j]==1) ans++; } if(ans>=5) { cout<<"Yes"; return 0; } ans=0; for(int j=1;j<=5;j++) { if(a[j][i]==1) ans++; } if(ans>=5) { cout<<"Yes"; return 0; } ans=0; } cout<<"No"; return 0;
}
}
-
0
标题
思路
解题方法
复杂度
时间复杂度:
添加时间复杂度, 示例:
空间复杂度:
添加空间复杂度, 示例:
Code
{
#include<bits/stdc++.h> using namespace std; int a[6][6]; int main() for(int i=1;i<=5;i++) { for(int j=1;j<=5;j++) { cin>>a[i][j]; } } for(int i=1;i<=5;i++) { bool flag=true; for(int j=1;j<=5;j++) { if(a[i][j]==0) flag=false; } if(flag==true) { cout<<"Yes"; return 0; } flag=true; for(int j=1;j<=5;j++) { if(a[j][i]==0) flag=false; } if(flag==true) { cout<<"Yes"; return 0; } else if(i==1) { flag=true; for(int j=i;j<=5;j++) { if(a[j][j]==0) flag=false; } if(flag==true) { cout<<"Yes"; return 0; } } else if(i==5) { flag=true; for(int j=5;j>=1;j--) { if(a[j][j]==0) flag=false; } if(flag==true) { cout<<"Yes"; return 0; } } } cout<<"No"; return 0;
}
- 1
信息
- ID
- 46
- 时间
- 1000ms
- 内存
- 512MiB
- 难度
- 1
- 标签
- 递交数
- 370
- 已通过
- 221
- 上传者