Блог пользователя heyyolol

Автор heyyolol, история, 7 лет назад, По-английски

Recently I tried using getchar to take in char input (c++), the sample works fine on my compiler , but got idleness limit exceeded on judge, I tried the code in custom invocation, and it turns out getchar was reading random characters lol. My code is something like

for(int i=0;i<n;++i) for(int j=0;j<n;++j) while(grid[i][j]!='.'&&grid[i][j]!='#') grid[i][j]=getchar()

Does anyone know how to fix this problem? Thank you!! :)

  • Проголосовать: нравится
  • +5
  • Проголосовать: не нравится

»
7 лет назад, скрыть # |
 
Проголосовать: нравится +2 Проголосовать: не нравится

Why not use cin or scanf?

»
7 лет назад, скрыть # |
 
Проголосовать: нравится +18 Проголосовать: не нравится
scanf("%d %d\n", &n, &m);
for(int i = 1; i <= n; ++i) {
    for(int j = 1; j <= m; ++j) {
        a[i][j] = getchar();
    }
    tmp = getchar();
}