본문 바로가기

Algorithm5

[2023 서강대학교 청정수컵] 청정수 Round 짧 후기 모처럼 대회가 끝나고 공강인 오늘 시간이 남아 오랜만에 기록을 남기고 싶었다. 비하인드 Sogang ICPC Team 에서 주최하는 청정수컵에 참가하게 되었다. 복학 후 참가하는 첫 대회인 만큼 기대도 되었고, 한편으로는 걱정도 있었지만 집에서 혼자 문제를 푸는 것보다 대회의 긴장감도 느껴보고 싶었고, 개인적인 욕심이 들어 참가를 결정했다.사실 2022 청정수컵의 참가 자격이 solved.ac 플레 5 미만까지여서, 플레 5 승급을 얼마 남기지 않은 상태에서 혹시나 참가하지 못하지 않을까 학기 초반에 걱정했었는데, 쓸 데 없는 걱정이었다 ㅋㅋㅋ 올해부터 플레3 미만까지로 바뀌어서 초급 스터디의 문제를 마음 놓고 풀어 플레 5로 승급해버렸다. 이번 학기 목표가 강의자로 활동하고 있는 기초 스터디를 잘 마무.. 2023. 5. 22.
[PS] c++ vector의 begin() 과 end() 함수 c++에는 vector 라는 자료구조가 있는데, vector의 begin()과 end() 함수에 대해 우리가 자주 할 수 있는 실수에 대해 이야기해보려 한다. (알고리즘 문제를 풀다가, reverse() 함수를 쓸 일이 생겼는데, reverse(v.begin()+숫자, v.end()) 이게 도대체 어디서부터 어디까지를 거꾸로 전환하는지 갑자기 헷갈려서 찾아봤다.) vector 의 begin()이란 함수는 cplusplus.com 에 따르면, 'Returns an iterator pointing to the first element in the vector', 즉 벡터의 첫 번째 원소를 가리키는 iterator를 반환한다 라고 나와있다. 그렇다면, 많은 사람들이 'end() 함수는 그럼 벡터의 마지막 원소.. 2022. 12. 18.
[알고스팟/c++] Sorting Game SORTGAME 문제 풀이 https://algospot.com/judge/problem/read/SORTGAME algospot.com :: SORTGAME Sorting Game 문제 정보 문제 중복이 없는 정수 수열이 주어진다. 이 때, 우리는 이 수열의 임의의 구간을 선택해서 해당 구간을 뒤집을 수 있다. 이 뒤집기 연산을 통해 전체 수열을 정렬하고 싶다. algospot.com 오늘은 "알고리즘 문제해결전략"에서 너비 우선 탐색(BFS)에 대해서 공부했다. 책에서는 너비 우선 탐색은 깊이 우선 탐색과 달리 주로 그래프의 최단 경로 문제를 풀기 위해 사용된다고 나와있다. 그 이유는 BFS는 정점에 인접한 거리에 있는 정점들을 우선적으로 방문하기 때문이지 않을까 싶다. 예를 들어, 우선적으로 바로 인접한 정점들(정점과 정점 .. 2021. 7. 28.
[알고스팟/c++] 고대어 사전 DICTIONARY 문제 풀이 https://algospot.com/judge/problem/read/DICTIONARY algospot.com :: DICTIONARY 고대어 사전 문제 정보 문제 아마추어 고고학자인 일리노이 존스는 시카고 근교에서 고대 문명의 흔적을 찾아냈습니다. 그 흔적 중에는 이 언어의 사전도 포함되어 있었는데, 이 사전에 포함된 algospot.com 접근 방식 1. 이 문제에서는 의존성이 있는 입력이 주어지며, 우리가 해결해야할 문제는 의존성이 있는 알파벳을 "순서대로" 출력하는 것이다. "알고리즘 문제해결전략" 책의 표현을 빌리자면, "위상 정렬은 의존성이 있는 작업들이 주어질 때, 이들을 어떤 순서로 수행해야 하는지 계산해 주는 것"이다. 알파벳에 특정한 순서를 부여해 단어들을 정렬하고 있다. 이로써 위.. 2021. 7. 27.