听取WA声一片

P1234 小 A 的口头禅

@[流星之愿](/space/show?uid=67493) 首先,函数中少了两个关于x的判断; secondly,主函数中第2个循环的j应该<=m-1(或者直接<m)。
by 蕙兰居士 @ 2019-06-19 17:29:24


~~对不起没有整理~~ 首先,函数中少了两个关于x的判断; secondly,主函数中第2个循环的j应该<=m-1(或者直接<m)。
by 蕙兰居士 @ 2019-06-19 17:30:01


x要判断啥来着QwQ
by lxzy_ @ 2019-06-19 17:31:29


像这样 ``` #include<iostream> using namespace std; const int N=1001; char a[N][N]; int n,m; int sum; void solve(int x,int y){ if(a[x][y]!='h') return ; if(x-3>=0){ if(a[x-1][y]=='e'&&a[x-2][y]=='h'&&a[x-3][y]=='e') sum++; } if(x+3<=n-1){ if(a[x+1][y]=='e'&&a[x+2][y]=='h'&&a[x+3][y]=='e') sum++; } if(y-3>=0){ if(a[x][y-1]=='e'&&a[x][y-2]=='h'&&a[x][y-3]=='e') sum++; } if(y+3<=m-1){ if(a[x][y+1]=='e'&&a[x][y+2]=='h'&&a[x][y+3]=='e') sum++; } } int main() { cin>>n>>m; for(int i=0;i<=n-1;i++) for(int j=0;j<=m-1;j++) cin>>a[i][j]; for(int i=0;i<=n-1;i++) for(int j=0;j<=m-1;j++) solve(i,j); cout<<sum; return 0; } ```
by 蕙兰居士 @ 2019-06-19 17:32:55


(⊙o⊙)哦,还有上下方向啊?
by lxzy_ @ 2019-06-19 17:35:16


知道了,感谢
by lxzy_ @ 2019-06-19 17:35:30


Your welcome! 这是蒟蒻的职责
by 蕙兰居士 @ 2019-06-19 17:36:58


```cpp #include<iostream> using namespace std; const int N=1001; char a[N][N]; int n,m; int sum; void solve(int x,int y) { if(a[x][y]!='h') return ; if(y+3<=m-1) if(a[x][y+1]=='e'&&a[x][y+2]=='h'&&a[x][y+3]=='e') sum++; if(y-3>=0) if(a[x][y-1]=='e'&&a[x][y-2]=='h'&&a[x][y-3]=='e') sum++; } int main() { cin>>n>>m; for(int i=0;i<=n-1;i++) for(int j=0;j<=m-1;j++) cin>>a[i][j]; for(int i=0;i<=n-1;i++) for(int j=0;j<=n-1;j++) solve(i,j); cout<<sum; return 0; } ```
by Cheney @ 2019-08-25 15:59:09


|