맥주 한 캔 마셔가지고 급 졸린 상태라 스킵할까 했는데 갑자기 5분 전에 "하면 무조건 오른다"는 근거 없는 느낌을 받고 치고 느낌대로 잘 나와버림
A - ABC B에서나 나올법한 문제
앳코더를 따라가기로 한건가..? 약간 당황하면서 품
B - 아마 정해 O(N)인거 같은데 내가 코포를 치면 처음에는 머리가 굳어서 그냥 이진탐색 + set을 박아버림
set 때문에 O(N log^2 N)이라 1.3초 찍히고 좀 불안해서 끝나기 직전에 bitset으로 바꿔서 O(NlogN)으로 다시 제출함
set 코드 핵 당하면 저기서 순위 더 밀림
C - 1초인데 느려도 1억이면 그냥 123456789까지 반복문 박아볼까?라는 생각을 했음
그런데 저번에 팀연습 할 때 똑같은 코드가 백준은 되고 코포에서 TLE 나는 걸 경험한 뒤로 안될 거 같아서 다시 생각하고 2^9인거 발견하고 바로 품
D - 스위핑 같은데..? 일단 이런 문제 나오면 항상 스위핑이 머리에 떠오름
그런데 생각하다 보니까 신촌 캠프(SUAPC) 기출의 아이디어를 쓸 수 있다는 것을 발견함 ㅋㅋ
백준 19580 이 문제인데 일단 kmp 돌려서 가능한 구간을 다 찾고 그 구간들에 대해 19580의 정해 아이디어를 돌려서 풀어버림
G - 초반에 이것들 되게 많이 풀길래 뭐지? 싶어서 구경하다가 다시 E로 감
E - 앳코더에서 주기 찾는 문제에 자주 당해서 딱봐도 주기가 있겠거니 싶었음
주기가 있는건 찾았는데 뭔가 꼬임. 더 생각해보니까 10의 자리 패리티에 영향을 받는다는 것을 깨달음
이거까지 발견하고 ㅋㅋ 사람들 이거 왜캐 못품? 하면서 싱글벙글 짜려다가 예제 tc를 다 보고 흠칫함
1의 자리가 0이거나 5인 경우가 트롤이었던 거임 아 ㅋㅋ
5랑 0 처리하는 방법 좀 꼬여서 1틀하고 맞음
내가 운이 좋으면 최근에 공부했던 걸 그대로 써먹을 수 있는 문제를 대회 때 겪는게 2번째라서 좀 신기했음 ㅋㅋ
처음은 작년 ICPC 예선에서 세그트리로 LIS 카운팅 하는거 배운거 써먹은 뒤로 이런 운빨은 못 겪을 줄 알았는데 또 이런 기막힌 우연이 ㄹㅇㅋㅋ
오늘은 기분 좋게 잘 수 있다.
결론
SUAPC 푸세요.
역시 양이 중요함. 많이 푸세요.
SUAPC가 머임
https://www.acmicpc.net/category/497
대충 신촌 대학들 모임
딥3에 kmp가 나옴?? ㄷㄷ
숫자가 작아서 kmp 안 써도 되는데 내가 최근에 kmp를 공부하고 있기도 했고 std::find로 매칭 구간 갯수 찾는 법을 몰라서 kmp 박아버림
d번그냥 그리디로 풀리는데 kmp 까지?
C특) O(1) 풀이가 작성 시간이 더 짧거나 비슷함
C도 그냥 그리디로 뒤에서부터 9, 8, 이런식으로 빼주면 됨
D번 DP로 풀었는데 그리디로도 되는구나