파비의 매일매일 공부기록

Codeforces Round #701 (Div. 2) Virtual participation 후기 본문

Problem Solving/Codeforces

Codeforces Round #701 (Div. 2) Virtual participation 후기

fabichoi 2021. 2. 16. 23:30

최근에 코딩 테스트를 보는 일이 잦다 보니

블로그에 포스팅하는 주제 중 코딩 테스트 관련 내용은 좀 안 올리게 됐었다.

 

오늘은 다른 주제로 포스팅을 할 수 있는 상황이 아니라서

오랜만에 Codeforces Div. 2에 가상 참석(Virtual Participation)을 했다.

 

그러나 역시 1번에서 막혔음 ㅠㅠ

두 가지의 case 중에 하나를 선택해서 진행해서 0으로 만드는 최솟값을 구하는 건데

최근에 풀었던 문제도 이거랑 비슷했어서 어떻게 풀어야 하지 고민은 해봤지만

딱히 답이 나오지 않아 다른 사람의 풀이를 확인해봤다.

 

가장 최악의 조건을 구하는 게 첫 번째 순서였고

loga / logb를 수행했을 때 a가 최댓값 10^9, b가 2일 때

9/0.301 = 29이며 b가 1인 경우가 최소이므로 30이 가장 최악의 값이다.

이 값보다는 더 크게 나올 수가 없다.

 

위의 조건을 참조해서 소스를 구현하면 되는데

구현된 소스에는 i가 30까지가 아니라 20까지만 구한다.

아무리 봐도 이해가 안 가는데.. 근데 30이나 20이나 시간 초과에 대한 이슈는 없을 듯싶긴 하다.

 

내가 참조한 풀이의 링크는 다음과 같다.

www.youtube.com/watch?v=fMZIuQU7fqY&feature=youtu.be&ab_channel=Ambujverma

 

이렇게 푸는 방법이 있다는 걸 생각지 못한 게 매우 아쉽다.

다음에 비슷한 유형이 나오면

일단 최악의 case를 구한 뒤에 차차 하나씩 줄여나가는 식으로 로직을 짜 봐야겠다.

반응형
Comments