후기/대회

제1회 와쿠(AGCU)컵 후기

nageune 2023. 4. 16. 18:47
728x90
반응형

제1회 와쿠(AGCU)컵 후기

 

 

대회

https://www.acmicpc.net/contest/view/967

제1회 와쿠(AGCU)컵

www.acmicpc.net

 
 

일시

시작: 2023년 4월 16일 12:00 종료: 2023년 4월 16일 17:00
 
 

푼 문제

A. 초코바

간단한 사칙연산 문제
 
 

B. 사격 내기

대회 때는 그냥 구현했는데 대회 끝나고 생각해 보니 xor 연산만 하면 되네?
점수가 2^n 꼴이므로 2진수로 나타내 둘 중 한 명만 1인 것만 점수로 추가해 주면 된다.
 
 

C. 고양이는 많을수록 좋다

처음에는 고양이를 생성하고 이후, 현재 고양이 수의 두배가 n보다 작으면 두 배 해주고 같거나 클 때는 n으로 만들어주면 된다. 연산의 총횟수를 출력.
 

 

D. 오렌지먹은지오랜지

문제를 잘못 이해해서 삽질 좀 했다. 모든 부분 문자열을 보고 있었는데 첫 글자를 포함하는 부분 문자열과 마지막 글자를 포함하는 부분 문자열만 비교하면 되더라. 쉬운 문자열 문제.
 
 

E. 합금 주화

복잡해 보여서 마지막에 풀었다. 주어진 공식을 비율에 따라 적절히 식을 세우면 된다. 비율을 구하고 하나의 식으로 만드는 게 중요하다. d1, d2 크기를 비교해야 식에 d1이 사용될지, d2가 사용될 지 정할 수 있다.
 
 

F. 콰트로치즈피자

Cheese가 문자열 마지막에 있으면 map 자료형을 사용해서 중복처리 한다. map의 크기가 4 이상이면 yummy.
 
 

J. 사사의 사차원 사탕 봉지

누적합 배열 만들고 lower_bound로 인덱스를 찾아줬다. 범위에 없으면 Go away!
 

 

K. I LOVE JavaScript

흔한 stack 사용하는 문제.
 
 

L. OX

규칙을 찾는 게 조금 힘들었다. 바로 떠오르지는 않았고 몇 분 잡고 있으면서 써봤더니 바로 떠올랐다. i번째 index에 O가 있으면 그 O가 사라지기 위해서는 2^i 번 연산이 필요하다. 모듈러 연산을 pow에 포함시키기 위해 pow 함수를 만들었는데 TLE가 나서 분할정복을 이용한 거듭제곱 함수를 만들어 썼다. (파이썬은 기본적으로 분할정복으로 한다더라..)
 
 

N. 악보는 거들 뿐

연속한 증가/감소 부분 수열의 길이의 최댓값이 정답이다.
 

 

틀린 문제

G. N결수

수가 엄청 크고 감이 안 잡혀서 그냥 넘겼었다. 에디토리얼 보면서 함 봐야겠다.
 
 

H. △

문제 보자마자 설루션이 떠올라서 바로 구현했는데 틀렸다. 아무리 봐도 맞는데 계속 틀려서 마지막까지 시도해 보다가 포기한 문제.
그놈의 long long 짜증 난다. n-1+(n-1)*(n-2)을 출력하는 게 답인데, int 범위를 초과하는 케이스가 있어서 발생한 문제였다.
n이 int 이더라도 출력 함수 안에서 (cout 안에서) 연산은 자동으로 범위가 설정될 줄 알았는데 안 되는 것이었다. 지금까지 int 범위 연산 값이 long long이면 연산 값을 저장하는 변수만 long long으로 했는데, 잘못된 방법이었던 것 같다.
연산 값이 long long이면 연산에 참여하는 값도 long long으로 타입 통일하도록 해야겠고, 수의 범위를 잘 확인하도록 주의해야겠다고 생각하게 된 문제다.
 
 

I. 고추장 괄호 문자열

백트랙킹인 것 같은데 구현 너무 귀찮다..
 
 

M. 강아지는 많을수록 좋다

bfs + dp로 숨바꼭질 문제랑 비슷한 것 같다. 귀찮음 + 다른 문제 때문에 시간 부족으로 풀지는 못했다. 심심할 때 풀어봐야겠다.
 
 

O. 지연 평가

힘들어서 안 읽음!
 

 

총평 및 여담

최고 난이도 실버1이라길래 많이 풀 수 있겠다고 기대하며 참가한 대회. 15문제 중 무려 10문제나 풀었다! H번 long long 이슈가 있어서 아쉬웠지만 또 하나 배우게 됐다. 나머지 못 푼 문제도 시간만 많았으면 풀어볼만 했을 것 같아 업솔빙을 해봐야겠다. 이런 쉬운 뉴비들을 위한 대회가 자주 열렸으면 좋겠다 ㅎ

728x90
반응형