본문 바로가기
728x90

해시3

[python] 백준 21939 문제 추천 시스템 Version 1 https://www.acmicpc.net/problem/21939 21939번: 문제 추천 시스템 Version 1 tony9402는 최근 깃헙에 코딩테스트 대비 문제를 직접 뽑아서 "문제 번호, 난이도"로 정리해놨다. 깃헙을 이용하여 공부하시는 분들을 위해 새로운 기능을 추가해보려고 한다. 만들려고 하는 명령 www.acmicpc.net 문제 해결 Hash 맵을 통해 문제 번호를 알면 문제 난의도를 바로 알 수 있도록 매핑한다. 문제 난이도를 알면 그 난이도 문제 번호들을 알 수 있도록 int-list 매핑을 한다. recommend == 1일 때는 어려운 난이도부터 살펴보고 recommend ==-1은 쉬운 난이도부터 문제가 있는지 살펴보도록 구현한다. CODE import sys input = s.. 2023. 8. 30.
[python] 백준 19583 싸이버개강총회 https://www.acmicpc.net/problem/19583 19583번: 싸이버개강총회 첫번째 줄에는 개강총회를 시작한 시간 S, 개강총회를 끝낸 시간 E, 개강총회 스트리밍을 끝낸 시간 Q가 주어진다. (00:00 ≤ S < E < Q ≤ 23:59) 각 시간은 HH:MM의 형식으로 주어진다. 두번째 줄부터는 www.acmicpc.net 문제 해결 시간비교를 어떻게 할 것인가가 문제 시간을 string type으로 바꾼다음 :을 제외하고 이어 붙여 정수로 만들어 비고하면 편하다! 19:53 → 1953, 20:00 → 2000 로 바꾼 후 비교! 시작시간 이전에 들어오고 끝낸 시간에서 스트리밍을 끝낸 시간 사이에 나가는 것이 확인 되면 답의 개수를 추가하면 끝! CODE import sys i.. 2023. 8. 21.
[python] 백준 2295 세 수의 합 https://www.acmicpc.net/problem/2295 2295번: 세 수의 합 우리가 x번째 수, y번째 수, z번째 수를 더해서 k번째 수를 만들었다라고 하자. 위의 예제에서 2+3+5=10의 경우는 x, y, z, k가 차례로 1, 2, 3, 4가 되며, 최적해의 경우는 2, 3, 4, 5가 된다. k번째 수가 최 www.acmicpc.net 문제 해결 A[x]+A[y]+A[z] = A[k]를 보고 3개를 잡으려 하지말고 A[x]+A[y] =c= A[k]-A[z]로 바꿔서 생각해보려 하자. A[x]+A[y]=c로 가능한 c를 sample 집합에 넣는다. k를 가장 큰 n-1인덱스부터 0까지 차례로 고정시키면서 z를 0부터 k인덱스까지 보면서 A[k]-A[z] in sample을 확인하면서.. 2023. 4. 23.
728x90