Competitive Programming/Codeforces

대회후기: Codeforces Round #641 (Div. 1)

Syphon 2020. 5. 13. 00:31

개강 이후 정말 바쁘게 살다가 정말 오랜만에 코포를 뛰었다.


A: Orac and LCM

입력으로 들어온 숫자들의 pairwise LCM들의 전체 GCD를 구해야 한다.

 

예제 입력을 보고 조금 고민을 해 보니, $n$개의 숫자 중 최소 $n - 1$개에 포함이 되어있는 약수는 우리가 구하는 최종 정답의 약수가 되어야 한다. 입력으로 들어올 수 있는 수의 범위가 충분히 작기 때문에, 입력으로 들어온 각 숫자들의 약수들을 찾고, 각 약수마다 몇번 등장했는지 새로운 배열을 통해 세어주기만 한다면 최종 정답이 약수로 가져야 하는 모든 수들을 찾을 수 있다. 이제 방금 찾은 수들의 LCM을 구하면 끝이다.

 

사실 고민을 조금이 아니라 많이 했다.

구현 과정에서도 실수가 여러번 있어서 풀기까지 시간이 조금 걸렸다.

28분에 AC


B: Orac and Medians

입력으로 들어온 배열의 모든 수를 목표값인 $k$로 만들고자 한다.

배열의 수를 변형시키는 방법은, 원하는대로 subarray를 잡아서 subarray의 모든 원소를 그 subarray의 median값과 바꿔치기 하는 것이다. 이 과정을 원하는 만큼 반복할 수 있다.

이러한 과정을 통해 모든 수를 목표값으로 만들 수 있는지 판별하는 것이 이번 문제이다.

 

모르겠다.

6 WA


총평

망했다.

 

레이팅 변화 1956 - 58 = 1898

My Performance: ★☆☆☆


연습지