5개의 댓글이 있습니다.
-
-
Taeyoon_Lee -
#include <vector> #include <map> #include <set> #include <stack> #include <algorithm> #include <sstream> #include <iostream> #include <cstdio> #include <cmath> #include <string> #include <queue> #include <cctype> #include <cstring> using namespace std; #define REP(i,n) for(int i=0; i<(n); ++i) int n,m; char dt[30][90]; int main() { int tn; cin>>tn; while(tn--) { cin>>n>>m; REP(i,n) cin>>dt[i]; REP(i,n) REP(j,m) if (dt[i][j]!='*' && dt[i][j]!='_') while(1); } return 0; }
// 이 코드가 TLE가 나는 이유는 뭘까요..''?
15년 전 link
-
-
정회원 권한이 있어야 커멘트를 다실 수 있습니다. 정회원이 되시려면 온라인 저지에서 5문제 이상을 푸시고, 가입 후 7일 이상이 지나셔야 합니다. 현재 문제를 푸셨습니다.
Taeyoon_Lee
"각 문자는 _ 혹은 이다. _은 흰색 격자를 의미하며, *은 검은 색 격자를 의미한다."
라는 문장이 있는데요.
입력으로 _ 도 아니고 *도 아닌 문자가 들어오는 것 같네요.
REP(i,n) REP(j,m) if (data[i][j]!='' && data[i][j]!='_') while(1);
이렇게 하면 'ㅁ' TLE가 뜹니다.
if (data[py][px]=='_') continue; 이런식으로 쓰던 코드를
if (data[py][px]!='*') continue; 이렇게 바꾸니 AC군요..
15년 전