题解:vertical, horizontal, and radial 竖着,横着,斜着
横着,斜着,竖着均可,只要能连成pie就行。
o p r d t
i i i i e
f f s e d
Examples
Input
2
3 5
o p r d t
i i i i e
f f s e d
4 3
o p r
o k r
i i u
f f s
Output
Cutie Pie!
Sorry Man
#include <bits/stdc++.h>
using namespace std;
int main()
{
int t;
cin>>t;
while(t--)
{
int n,m,i,j,flag;
int a[20][20];
char c;
cin>>n>>m;
memset(a,0,sizeof(a));
for(i=1; i<=n; i++)
{
for(j=1; j<=m; j++)
{
cin>>c;
if(c=='p')
a[i][j]=1;
if(c=='i')
a[i][j]=2;
if(c=='e')
a[i][j]=3;
}
}
flag=0;
for(i=1; i<=n; i++)
{
for(j=1; j<=m; j++)
{
if(a[i][j]==2)
{
if(a[i][j-1]==1&&a[i][j+1]==3) flag=1;
if(a[i][j-1]==3&&a[i][j+1]==1) flag=1;
if(a[i-1][j-1]==1&&a[i+1][j+1]==3) flag=1;
if(a[i+1][j+1]==1&&a[i-1][j-1]==3) flag=1;
if(a[i-1][j]==1&&a[i+1][j]==3) flag=1;
if(a[i-1][j]==3&&a[i+1][j]==1) flag=1;
if(a[i-1][j+1]==1&&a[i+1][j-1]==3) flag=1;
if(a[i+1][j-1]==1&&a[i-1][j+1]==3) flag=1;
}
}
}
if(flag==1)
printf("Cutie Pie!\n");
else
printf("Sorry Man\n");
}
return 0;
}
思想:本题采用了枚举思想。
![在这里插入图片描述](https://img-blog.csdnimg.cn/20190817233742920.png?x-oss-process=image/watermark,type_ZmFuZ3poZW5naGVpdGk,shadow_10,text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L3FxXzQ1NDA4MzE4,size_16,color_FFFFFF,t_70