c++です。https://atcoder.jp/contests/abc300/tasks/abc300_cの問題です。
コンパイルエラーにはならないですが、出力が正解と対応しません。どうしてでしょうか。
原因を教えていただけると嬉しいです
#include <bits/stdc++.h> using namespace std; int main(){ int h,w,count=0,f=0; cin>>h>>w; char c[h][w]; for(int i=0;i<h;i++){ for(int j=0;j<w;j++){ cin>>c[i][j]; } } int n=min(h,w); //サイズnを全探索 for(int i=1;i<=n;i++){ //中心を全探索 for(int j=0;j<h;j++){ for(int k=0;k<w;k++){ //一 if(c[j][k]=='#'){ f=0; int e=i; count=0; //条件を満たしているか while(e>=1){ if(c[j+e][k+e]=='#'&&c[j+e][k-e]=='#'&&c[j-e][k+e]=='#'&&c[j-e][k-e]=='#'){ count++; } e--; } //条件2 if(count==i&&(j+i+1>h||k+i+1>w||j-i-1<0||k-i-1<0||c[j+i+1][k+i+1]=='.'||c[j+i+1][k-i-1]=='.'||c[j-i-1][k+i+1]=='.'||c[j-i-1][k-i-1]=='.')) f++; } } } cout << f; if(i==n)break; else cout << " "; } cout << endl; }
試したことを書いてもさんこうにならないとおもうので 書きませんでしたが必要でしょうか?

回答1件
あなたの回答
tips
プレビュー