Algorithm & PS(85)
-
2024 한양대학교 ERICA X 코드트리 전국 SW 프로그래밍 경진대회
지난번 구름edu에서 진행된 대회 이후에 또 다른 대회에 참여하였습니다.지난 대회는 한동대 / 우송대 / 한밭대 이렇게 세 대학교끼리 주최하여 진행한 것 같은데,이번 대회는 전국 대학교에서 참여하였습니다. 대회 진행1. 마스코트 선별 시험 [실버 2]배열에서 K개의 element를 골랐을 때 element 간의 차이 중에서 최소 차이를 묻는 문제였습니다.정렬해서 a[i]와 a[i+K-1]의 차이를 구하여 그 중 최솟값을 구하면 되는 문제였습니다.정렬 + 그리디 유형으로 백준에서도 실버 2 정도 받았을 것 같네요.시간복잡도 : O(NlogN) 2. 개구리 점프 [골드 2]https://www.acmicpc.net/problem/1937 이 문제가 생각나는 문제였습니다.(1,1), (1,2) ,... (N,..
2024.11.30 -
2024 전국 대학생 프로그래밍 경진대회 후기
11월 16일에 전국 대학생 프로그래밍 경진대회가 있다길래 참여해보았습니다.다음주 ICPC 본선 전에 몸도 풀겸 참여해보았습니다.시험 환경은 비대면으로 시험을 치는 지라, Softeer에서의 HSAT과 같이 웹캠 등을 켜서 진행했습니다. 사전 테스트사전에 테스트를 쳐야하기에, 한 번 쳐보았습니다. 4문제에 6시간 정도 주어지는데 총 40분 정도 걸렸던 것 같습니다.사전에 풀었던 문제는 다음과 같았습니다. 1. UXUI 디자이너 문제 : https://level.goorm.io/exam/163020/uxui-%EB%94%94%EC%9E%90%EC%9D%B4%EB%84%88/quiz/1 구름LEVEL난이도별 다양한 문제를 해결함으로써 SW 역량을 향상시킬 수 있습니다.level.goorm.io이벤트 - 참여..
2024.11.30 -
2024 ICPC Seoul Regional First Round 후기
이번에 KimsaiAn 팀명으로 ICPC에 참여해보았습니다.저희 팀은 E,F,H 이렇게 총 3 문제를 풀었는데, 어떻게 풀었는지 풀어본 순서대로 복기해보려 합니다. E : 행렬 게임 처음에 어떤 문제가 쉬울지 감이 안 오다가 스코어보드에서 E번을 다들 풀기에 저희도 풀어보았습니다. 서두르느라 수식이 안 보였지만, a와 b 행렬의 값 차이의 절댓값은 칸 별로 미리 계산할 수 있어보였습니다. 그러면, 각 열 별로 a와 b 행렬의 값 차이가 제일 큰 값들도 미리 찾을 수 있겠죠? 미리 각 열 j 별로 |a[i][j] - b[i][j]| 가 제일 큰 i 위치들을 구하던지 아니면 |a[i][j] - b[i][j]| 값들을 저장해둡시다. 그리고 M개에 대해서 미리 계산을 해둔 값들로 더해주면 됩니다. 총 시간복잡도..
2024.11.15 -
2024. 06. 19. ~ 2024. 06. 25.
백준 7 문제 1. BOJ 14654 : 스테판 쿼리 - S5Implementation, Simulation 문제.주어진 기록대로 시뮬레이션을 돌려서 푸는 문제였다. 큐 같은걸로 시뮬레이션을 돌리는 문제. 2. BOJ 15084 : Treating Fractions Irrationally - S5Implementation, Math, Arithmetic 문제.나눗셈을 실제로 구현해서 돌리면서 0,9가 먼저 나오는지 아니면 주기성이 먼저 나오는지를 확인하는 문제였다.n 주기 최대 길이가 d일 것이므로... (n은 %d 값을 취하니깐 n 값은 0 ~ d-1 사이의 값이 된다.) 시간복잡도는 O(d)일 듯. 3. BOJ 14731 : 謎紛芥索紀 (Large) - S1Divide and Conquer, Mat..
2024.06.26 -
BOJ 랜덤 마라톤 후기
이번에 Solved.ac이 시즌 4를 맞이하면서 새로운 기능이 생겼습니다. 바로 랜덤 마라톤이라고 일종의 주간 미션입니다.랜덤 마라톤은 말 그대로 일 주일 단위 랜덤디펜스를 한다고 생각하면 됩니다. 총 8 문제가 여러 난이도 분포에 맞추어 주어지며 일 주일 내로 해당 문제들을 푼다면 추가 별조각을 얻을 수 있습니다. Solved.ac 내부적으로 랜덤디펜스를 돌릴 수 있는 기능이 있으면 좋겠다고 생각했는데, 이런 기능이 나타나서 매우 흥미로웠습니다. 이를 통해서 저도 좀 더 PS에 흥미를 다시 가질 수 있고 또 조금 침체되어있는 듯한 분위기도 좀 환기시킬 수 있지 않을까라는 기대도 해봅니다. 아무튼 잡소리는 여기까지 하고 제가 받은 마라톤 코스와 각 문제에 대해서 푼 후기를 남겨보도록 하겠습니다. 제가 ..
2024.06.19 -
2024.05.06. ~ 2024.05.12.
백준 1 문제. 1. BOJ 14450 : Hoof, Paper, Scissors (Gold) - G3 DP 문제. DP 테이블을 dp[몇 번 손을 바뀌었는가][현재 낸 손 상태][몇 번째 소까지 상대 한 상태] 이런식으로 구상하고 테이블에 해당 상태에서 최대 이기는 횟수를 저장하도록 구성했다. 그렇게 DP 테이블을 구상하고 점화식을 세워보면 아래와 같은 경우들이 나온다. dp[k][i][j] = max( dp[k][i][j-1], dp[k-1][0][j-1], dp[k-1][1][j-1], dp[k-1][2][j-1] ) + (현재 낸 손이 j번째 소를 이길 수 있으면 1, 아니면 0) // 각각 대충 설명하자면, 손 상태를 안 바꿀 때, 손 상태를 바꿀 때 이렇게 생각할 수 있다. 까먹고 계속 안 올..
2024.05.18