2016CCPC东北地区大学生程序设计竞赛 - 重现赛 1005
Posted 樱花落舞
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了2016CCPC东北地区大学生程序设计竞赛 - 重现赛 1005相关的知识,希望对你有一定的参考价值。
链接http://acm.hdu.edu.cn/showproblem.php?pid=5926
题意:给我们一个矩阵,问你根据连连看的玩法可以消去其中的元素
解法:连连看怎么玩,就怎么写,别忘记边界
#include<stdio.h> //#include<bits/stdc++.h> #include<string.h> #include<iostream> #include<math.h> #include<sstream> #include<set> #include<queue> #include<map> #include<vector> #include<algorithm> #include<limits.h> #define inf 0x3fffffff #define INF 0x3f3f3f3f #define lson l,m,rt<<1 #define rson m+1,r,rt<<1|1 #define LL long long #define ULL unsigned long long using namespace std; int t; int a[100][100]; int main() { cin>>t; for(int i=1;i<=t;i++) { int flag=0; int n,m; cin>>n>>m; for(int i=1;i<=n;i++) { for(int j=1;j<=m;j++) { cin>>a[i][j]; } } for(int i=1;i<=n;i++) { for(int j=1;j<=m;j++) { if(i+1<=n&&a[i+1][j]==a[i][j]) { flag=1; break; } if(j+1<=n&&a[i][j]==a[i][j+1]) { // cout<<"A"<<endl; flag=1; break; } } } for(int i=1;i<=n;i++) { for(int j=1; j<=m; j++) { if(i!=j) { if(a[1][i]==a[1][j]||a[n][i]==a[n][j]) { // cout<<a[0][i]<<" "<<a[0][j]<<endl; // cout<<"A"<<endl; flag=1; break; } if(a[i][1]==a[j][1]||a[i][m]==a[j][m]) { flag=1; break; } } } } if(flag) { printf("Case #%d: Yes\n",i ); } else { printf("Case #%d: No\n",i ); } } return 0; }
以上是关于2016CCPC东北地区大学生程序设计竞赛 - 重现赛 1005的主要内容,如果未能解决你的问题,请参考以下文章
2016CCPC东北地区大学生程序设计竞赛 - 重现赛 1003
2016CCPC东北地区大学生程序设计竞赛 - 重现赛 1001
2016CCPC东北地区大学生程序设计竞赛 - 重现赛 1005
2016CCPC东北地区大学生程序设计竞赛 - 重现赛 1008