PS/CP

Educational Codeforces Round 71 (Rated for Div. 2)

leo020630 2021. 8. 26. 02:04

A. There Are Two Types Of Burgers (00:04, +)

더 비싼 버거를 최대한 많이 만들어준 후 남은 빵으로 다른 버거를 만들어주는 것이 최적이다.

 

B. Square Filling (00:08, +)

그리디하게 칠해준 후 두 배열이 같은지 확인하면 된다.

 

C. Gas Pipeline (00:31, +)

길이가 2이상인 0을 만날때 마다 비용이 더 적은 경로로 이어주면 된다.

 

D. Number Of Permutations (00:50, +)

전체 경우의 수인 \(N!\)에서 첫 배열로 정렬할 수 있는 경우와 둘째 배열로 정렬할 수 있는 경우를 빼준 후, 둘 모두로 정렬 가능한 경우를 더해주면 된다. 각 경우는 연속된 같은 수의 갯수만큼 팩토리얼을 해주면 구할 수 있다.

 

E. XOR Guessing (01:32, +)

첫 배열을 \([1, 100]\)으로 하고, 둘째 배열을 첫째 배열의 각 원소에 128을 곱해준 값으로 정의하자.

이렇게 정의하면 10000가지 XOR의 값이 전부 다르고, 10000가지 XOR의 값은 곧 입력받은 두 개의 값을 XOR한 값이므로 프로그램이 각 배열에서 선택한 원소를 알 수 있다.