(잡담)
오늘 하루는 프로그래머스 코딩 연습문제 풀다가 다 갔다..... ㅠ
"혼자 놀기의 달인" - 나를 힘들게 했던 문제... https://school.programmers.co.kr/learn/courses/30/lessons/131130
프로그래머스
SW개발자를 위한 평가, 교육, 채용까지 Total Solution을 제공하는 개발자 성장을 위한 베이스캠프
programmers.co.kr
머릿속에서 코드를 단계별로 동작하는 게 오래 걸린다... 레벨 1인줄 알았는데 레벨 2였다;;
결국 낮에 시작해서 저녁에 해결했는데, 마지막 두시간 정도 뻘짓하다가 내가 놓쳤던 것은...
루프에서 최댓값 2개를 업데이트하고 있었는데 최댓값 갱신할 때 두번째 최댓값 업데이트를 안했던 것 ㅠ...... 멍청아~~~
더 빠릿빠릿하게 하고, 더 꼼꼼히 살펴보자...
+ single digit integer to char
ASCII 값 '0' 을 더해 한자리 정수를 char 로 만들 수 있다.
그냥 (char) digit 뭐 이런 식으로하면 \u000 이런게 붙는다.
iostream 의 속도를 빠르게 할 수 있는 방법들 (주의 필요)
ios::sync_with_stdio(false); - C의 stdio 와 동기화 해제 --> printf scanf 등 C의 입출력 함수를 호출할 때 주의해야 한다.
ios::sync_with_stdio , cin.tie , cout.tie 사용법과 설명, 속도 비교
※요약 : 아래 구문들을 사용할 때, C와 C++의 입출력 혼용하지 않아야하며, thread 사용에 주의해야한다. 1.ios_base::sync_with_stido(bool sync); [설명] C++ 표준 스트림들이 C표준 스트림들과 각각의 입출력
hegosumluxmundij.tistory.com
cin.tie(NULL) 또는 cout.tie(NULL)
cin 과 cout 가 서로 tie 상태에서는 다른 stream에서 입출력 명령 전 자신 stream을 flush 한다.
cout line 다음 cin line 이 와도 앞의 cout 이 flush 되지 않는다는데...
(그런데 비주얼 스튜디오에서 했을 때 untie 상태에서도 정상 출력됨)
cin 의 flag bits 플래그 값들 / clear() 와 ignore()
fail() 입력 실패 (e.g. 정수 입력하려는데 문자 입력)
eof() short for end of file (읽어들일 입력 없음)
bad() 스트림이 작동 불가 상태
good() 위의 세 에러가 발생하지 않음
clear() 플래그 값 초기화
ignore(numeric_limits<streamsize>::max(), '\n') : parameter 이름처럼 스트림이 처리할 수 있는 최대 사이즈만큼 flush 한다.
두번째 인자 '\n'을 최대 사이즈 전에 맞닥뜨리면 해당 위치까지 flush 한다. (개행 문자 포함)
----
과제하며 인풋 유효성 체크하는데 위와 같은 내용에 대해 자세히 몰라 시간을 많이 썼다....
'언리얼_엔진_게임개발_공부 > C++' 카테고리의 다른 글
[C++] 복사하기 - std::memcpy / std::copy, copy_if (0) | 2024.12.31 |
---|---|
[C++] <algorithm> search() / <string> find() (0) | 2024.12.30 |
[C++] vector, map / sort, find / reverse iterator and base iterator (2) | 2024.12.24 |
[C++] string to int / vector iterator / merge sort (0) | 2024.12.24 |
[C++] cin vs. getline / istream 입력 버퍼 / 난수 생성 / constant 멤버 함수 / 그 외 수학 공식 (0) | 2024.12.23 |