연습/AllSolvedin1557

240224 팀 연습 (2023 Hue City)

leo020630 2024. 2. 24. 23:59

대면 1컴으로 진행하였다. 연대 SCC팀과 시간을 맞춰 진행하였다. Hyperbolic 선배, 그리고 menborong-slah007 2인 팀도 동참하였다.

 

셋 : https://oj.vnoi.info/contest/icpc23_regional

 

 

나는 앞을 보고 시작했고, 다른 인원들은 조금 늦게 와서 풀린 문제부터 잡았다.

 

~0:09

B가 지문이 쉽길래 읽었는데 다행히 쉬운 문제였다. 빠르게 짰지만 사이트에 적응을 못 해 AC는 조금 늦게 받았다.

 

~0:14

kwoncycle이 F를 한번 틀린 후 맞았다. 나는 다음으로 풀린 L을 잡았고, petamingks는 D를 계속 봤다.

 

~0:23

L은 쉬운 애드혹 문제였는데, 구현을 잘못해 페널티를 적립한 후 맞았다. 이후로는 여러 문제를 보다 많이 풀린 C에 정착했다. petamingks는 G를, kwoncycle은 M을 잡았다.

 

~1:00

kwoncycle이 M을 짜던 와중 내가 C 풀이를 찾아 빠르게 짜서 맞았다. 직후 petamingks가 전달한 G 풀이도 짰으나, 일단 틀려서 컴퓨터를 다시 넘겨주었다.

 

~1:38

G의 틀린 부분은 다행히 빨리 찾을 수 있었다. 예제가 약한 것을 탓하며 고쳐서 빠르게 맞았다. 이후 나는 J를 잡았고, kwoncycle은 M을 더 잡더니 풀이가 틀렸음을 깨닫고 H로 갔다.

 

~2:31

J 풀이의 대부분을 완성하고, 마무리 부분을 잘 모르겠어서 petamingks에게 물어봤더니 잘 완성시켜 주었다. 케웤 그리디 문제라 시간도 꽤 걸렸고 한 번에 맞을지에 대한 확신도 없었는데 한번에 맞아서 좋았다.

 

~2:50

kwoncycle이 H를 빠르게 짜서 1번에 맞았다. 이후 나는 M을 조금 보다 E로 향했고, 둘은 FPS 문제로 추정되는 I를 같이 봤다.

 

~5:00

E는 겁먹지 않고 생각하니 풀이가 바로 나오긴 했는데, 구현이 정말 너무 더러웠다. 컴퓨터가 비어 있었기에 일단 코딩했고, 1시간 동안 짠 코드는 나를 배신했다. 이후 I 풀이를 찾았다는 kwoncycle에게 컴퓨터를 넘겨 주었지만 무수한 TLE와 함께 대회가 끝났다.

 

문제별 요약

티어는 추측입니다.

 

A (R?, Not solved) : 감탄밖에 나오지 않았다. 루비 상위임이 확실하다.

B (S3, solved by leo020630) : 유명한 좌셋 조건이다. 잘 구현해주자.

C (G2, solved by leo020630) : 그림이 보기 싫게 생기긴 했는데, 조금 생각해보면 몇 번의 연산을 써 1칸만 남기는 것이 가능하다.

D (D?, Not solved) : 규칙 찾기가 어려운 게임 이론 문제라고 한다.

E (D?, Not solved) : 달의 각 점이 해 안에 들어가는 각도의 구간을 구할 수 있고, 이들의 교집합이 존재하는지 판별하면 된다. 풀이는 이게 끝인 것 같은데 여러 예외 처리와 계산 등의 문제로 구현은 엄청나게 어렵다.

F (S1, solved by kwoncycle) : 주어진 연산에서는 각 문자 위치의 홀짝성이 불변한다. 비슷한 문제를 코포에서 본 적 있는 것 같다.

G (P4, solved by leo020630, petamingks) : 일단 실력 순서대로 정렬해주면 그룹을 4명 또는 6명씩 묶는 것이 최적이다. 풀이 자체는 웰노운인 감이 있는데 이 안에서 묶는 방법도 생각해야 하고, 번호 처리나 역추적 등 귀찮은 부분이 맞았다.

H (P1, solved by kwoncycle) : 해싱을 잘 사용해 해결했다고 한다.

I (R?, Not solved) : 문제를 본 순간 FPS 문제라는 감이 세게 들었다. 하지만 대회 중에는 kwoncycle이 이를 사용하지 않는 DP 풀이를 찾아 코딩했으나 TLE를 받았다. 결국 FPS 문제가 맞았고, 공부할 필요성이 있어 보인다.

J (P2, solved by leo020630, petamingks) : 치즈를 C, 접착제를 G라 하겠다. 우선 자명하게 CG와 GG는 늦게 사용할수록 이득이다. GG의 개수가 1이면 CC와 GC는 똑같이 보아 처리해주면 된다. GG가 1개 이상이라면 GC를 모두 사용해도 되고, CC에서 사용할 치즈를 잘 골라주어야 하는데 이 부분이 조금 어려웠다. 이 문제 역시 역추적을 요구했다. 왜인지는 잘 모르겠다. 여담으로 제목이 너무 내 취향이었다.

K (?, Not solved) : 문제를 읽긴 했으나 감도 잡지 못했다.

L (G3solved by leo020630) : 예외를 좀 처리해주면 쉬운 케이스워크가 된다.

M (D5, Not solved) : 어려운 게임 DP 문제이다. 관찰 하나를 하면 쉬워지는데, 해내지 못핸 점이 아쉽다.

 

 

느낀 점 + 피드백

새삼 4시간 59분에 E를 푼 Newtrend가 대단해진다.

 

후반에 시간이 많이 남으면 어떻게든 한 문제라도 더 풀려고 노력하자. 다만 너무 어려운 문제는 생각을 좀 하고 잡자.

 

초반에 내가 계속 키보드를 잡으면 AC는 빠르게 나오는데, 그만큼 풀이 생각할 시간이 줄어든다. 좋은 전략인지는 아직 잘 모르겠다.

 

베트남 리저널은 생각보다 코딩을 귀찮게 내는 것 같다.. 별로 좋은 소식은 아니다.