ps에서 c++을 사용하는 사람들 중 입력을 받을 때, 'cin'으로 입력을 받는 사람들은 대부분 시간을 단축하기 위해서
int main(){
ios_base::sync_with_stdio(false);
cin.tie(nullptr);
}
이런 trick을 사용한다.
하지만 문제를 푸는 도중에 문제의 입력을 색다른 방법으로 받아야 할 때가 있다.
위와 같은 경우들인데, 각 cell의 숫자들이 연속해서 입력되고 있다.
이것을 입력받기 위해서는 여러 가지 방법을 사용할 수 있는데,
내가 간단하게 사용하는 방법은 한자리씩 int형으로 입력받는 방법이다.
scanf("%1d", &a[x][y]);
이렇게 scanf를 사용하면서도 위의 trick을 지우지 않고 cin을 사용한다면 입력을 받을 때 오류가 발생한다.
이것 때문에 틀리지 않아도 되는 문제를 여러 번 틀렸다.
결론은, scanf를 사용할 때에
ios_base::sync_with_stdio(false);
이것은 꼭 주석처리 해 주어야 한다.
'프로그래밍 > 나의 디버깅 노트' 카테고리의 다른 글
[ps] n*n배열을 두개의 그룹으로 나눠서 연산을 구할때 시간최적화 (0) | 2021.06.01 |
---|---|
[ps][c++] 문자열 다루기 (0) | 2021.05.30 |
[ps][c++] test-case마다 vector을 초기화 하는 방법 (0) | 2021.05.02 |
[ps][c++] 지역변수에 의한 segmentation fault (0) | 2021.04.28 |
[C++] 배열을 초기화할 때 할 수 있는 실수 (0) | 2021.03.12 |