실버 1이지만 구현으로 최강입니다

8월 12일부터 15일까지 4개의 대회에 참가했습니다.

대회에디토리얼SolveRank
제1회 유틸컵 - Chapter 1-4 +8689/466
solved.ac Grand Arena #2에디토리얼2 +45346/1098(Rated)
365/675(All)
제 1회 하이콘 Open Contest에디토리얼3 +4469/235
제3회 고려대학교 MatKor Cup : 2023 Summer Open Contest - Phase 1에디토리얼1 +68162/297(All)

예전보다 문제 푸는 실력이 늘어난 것 같아 행복합니다.

28453

유틸컵 A, AC / 2 +22

메이플스토리의 만렙이 300이 된 지도 몰랐습니다. 옛날 200 시절밖에 모르는데...

모든 입력은 4개의 구간 중 하나에 속하게 되므로, 조건문 3개를 사용하여 출력하면 됩니다. 한 줄에 출력해야 하기 때문에 print문에서 end=" "을 사용해 출력할 수 있습니다.

28454

유틸컵 B, AC / +6

문제의 입력이 주어진 현재 날짜보다 늦은지를 검사하면 됩니다. 파이썬의 datetime 모듈을 사용할 수도 있지만, 연도와 월, 일을 순서대로 비교할 수도 있습니다.

28455

유틸컵 C, AC / 2 +32

메이플에 유니온이라는 시스템이 있었군요. 옛날 메이플에는 그런 거 없었는데

일단 입력을 리스트 안에 모두 받아주고, 내림차순으로 정렬해 42개의 요소만 남깁니다. 이후, 캐릭터마다 레벨이 60, 100, 140, 200, 250 이상인지 검사해 줍니다. 이후, 레벨의 합과 검사한 값의 합을 각각 출력하면 됩니다.

28456

유틸컵 D, AC / +26

일단 2차원 배열을 입력받아주고, 각 연산마다 하라고 했던 걸 해주면 됩니다. 연산의 첫 자리가 1인 경우 맨 뒤 원소를 없애고 맨 앞으로 삽입합니다. 2인 경우 배열을 회전시켜주면 됩니다.

28701

GA2 A, AC / 2

1부터 N까지의 수의 합의 제곱과 1부터 N까지의 세제곱의 합이 같다는 사실을 오늘 알았습니다.

문제에서 주어진 대로 구현하면 됩니다. 1부터 N까지의 수의 합은 \frac{N(N+1)}{2}이므로 그대로 구현하면 되고, 1부터 N까지의 세제곱의 합은 1부터 N까지의 수의 합의 제곱과 같다고 했으므로 합의 제곱을 두 번 출력하면 됩니다. 두 값이 같다는 증명은 에디토리얼에 있습니다.

28702

GA2 B, AC +1 / 22

세 개의 입력 중 한 번 이상은 숫자가 그대로 들어옵니다. 아마도요. 그렇지 않으면 이 문제를 풀 수 없을 겁니다.

일단 그렇다는 가정을 하고, 입력 중 숫자를 찾아 문제에서 주어진 규칙에 따라 출력을 해주면 됩니다.

28444

하이콘 A, AC / 1 +1

HI-ARC=?

문제에서 주어진 그대로 계산을 해 주면 됩니다. 입력을 i라는 리스트로 받았을 때, i[0]i[1]을 곱하고, i[2], i[3], i[4]를 곱한 값을 빼주면 되는 간단한 문제였습니다.

28445

하이콘 B, AC / 1 +9

앵무새는 귀엽습니다.

문제의 조건에 따라, 나올 수 있는 조합은 최대 16개입니다. 서로 다른 색의 개수에 따라 조건문을 만들 수도 있습니다. 하지만 더 쉬운 방법을 찾을 것입니다. 늘 그랬듯이.

우선 모든 색 조합을 구하고, 파이썬의 set 자료형을 사용해 중복을 제거합니다. 정렬하고 출력해 주면 됩니다.

28446

하이콘 C, AC / 2 +34

보자마자 '이건 딕셔너리다' 싶은 문제였습니다.

딕셔너리를 사용하면 문제가 간단해집니다. 1번 입력을 받으면 d[w] = x 로 값을 저장하고, 2번 입력을 받으면 d[w]를 출력하면 됩니다.

그렇대요
저런

28682

MatKor A, AC / 3 +68

아마도 처음으로 풀어보는 인터랙티브 문제일 겁니다.

몬티홀 문제라는 매우 유명한 문제가 있습니다.

세 개의 문 중에 하나를 선택하여 문 뒤에 있는 선물을 가질 수 있는 게임쇼에 참가했다. 한 문 뒤에는 자동차가 있고, 나머지 두 문 뒤에는 염소가 있다. 이때 어떤 사람이 예를 들어 1번 문을 선택했을 때, 게임쇼 진행자는 3번 문을 열어 문뒤에 염소가 있음을 보여주면서 1번 대신 2번을 선택하겠냐고 물었다. 참가자가 자동차를 가지려할 때 원래 선택했던 번호를 바꾸는 것이 유리할까?

결론은 '바꾸는 것이 유리하다'입니다. 선택을 바꾸지 않았을 때의 당첨 확률은 \frac{1}{3}, 바꿨을 때의 당첨 확률은 \frac{2}{3}입니다.

인터랙티브 문제는 출력을 한 이후 sys.stdout.flush() 등으로 출력 버퍼를 flush해야 합니다. 바부같이 import sys를 적지 않아 두 번이나 틀렸습니다를 받았습니다.


그랜드 아레나 2에 등록하고 출전해 퍼포먼스는 S+ 1927, 레이팅은 B 866A 1310이 되었습니다.