2021알고리즘

알고리즘/2021algorithm 과제 풀이

4.station

[문제] 막대(segment) 모양의 우주 정거장 2개 $S_1 = (A,B)$, $S_2 = (C,D)$ 가 있다. 이 두 우주 정거장을 연결하는 연결 통로(tube) $T$를 건설하려고 한다. 단, 우주에서의 공사작업은 매우 큰 비용이 들기 때문에 $T$의 길이는 최소화하려고 한다. 즉, $T$는 $S_1$과 $S_2$를 연결하는 최소 정수 길이의 선분이 되어야 한다. 정거장의 끝점이 통로의 연결점이 될 수도 있다. [입출력] 입력 파일 station.inp 의 4개 줄에 두 우주 정거장의 끝 점 $A,B,C,D$ 의 각 3차원 좌표 $(x, y, z)$가 3개 정수로 주어진다. 각 좌표의 범위는 $-10000 \leq x, y, z \leq 10000$이다. 여러분은 두 정거장을 연결하는 통로의 최..

알고리즘/2021algorithm 과제 풀이

3.deck

[문제] 1부터 N까지의 정수가 쓰인 N 장의 카드로 진행되는 게임을 준비하고 있다. 이 N 장의 카드는 특별하게 고안된 셔플용 장치(Card Deck)로 들어가서 충분히 그리고 랜덤하게 섞이게 된다. 그런데 셔플 장치에서 섞인 카드 중에서 몇 장의 카드가 분실되었다는 사실을 알게 되었다. 즉 카드덱에 넣는 과정에서 실수로 몇 장의 카드가 빠진 것이다. 그리고 이 분실된 카드는 최대 2장이라는 사실도 알고 있다. 여러분은 이 셔플 장치에서 차례대로 나오는 카드를 모두 읽은 뒤 그 분실된 카드 번호를 찾아야 한다. 입력 파일에는 셔플 기계에 저장된 개의 카드 번호가 적혀있다. M은 $M = N - 1$ 혹은 $M = N - 2$이다. [입출력] 입력파일 deck.inp의 첫 줄에는 정수 N이 주어진다. 단..

알고리즘/2021algorithm 과제 풀이

2.majority

[문제] 어떤 포털 사이트에서 특정 시간(time window)동안 수집된 전체 개의 단어(word) 기록이 있다. 이 중에서 과반(반을 넘는)인 $n / 2 + 1$회 이상 나타난 단어를 “인기 검색어”라고 한다. $n = 100$이라면 51번 이상 나타난 단어, $n = 501$이라면 251번 이상 출현한 단어가 인기 검색어이다. 어떤 경우에는 인기 검색어가 없는 경우도 있다. 예를 들어 인 단어 기록 {aa, ab, ac, aa, ad, ae}가 주어질 때, 이 경우에는 과반을 차지하는 단어가 없으므로 인기 검색어가 존재하지 않는다. 여러분은 주어진 단어 기록에서 인기 검색어를 찾아내는 프로그램을 작성해야 한다. [입출력] 입력파일 words.inp의 첫줄에는 입력 단어의 수를 나타내는 이 주어진다..

알고리즘/2021algorithm 과제 풀이

1.palin

[문제] 회문(回文, palindrome)은 어떤 방향으로 읽어도 같은 문자열을 말한다. 예를 들면 “여보 안경 안 보여”, “다 큰 도라지라도 큰다.”, “아들딸이 다 컸다 이 딸들아”은 잘 알려진 회문이다. 이번에는 영문 소문자 문자열만 다룬다. 예를 들어 ‘abba’ ‘kayak’, ‘reviver’, ‘madam’은 모두 회문이다. 만일 그 자체로는 회문이 아니지만 한 문자를 제거하여 회문으로 만들 수 있으면 이런 문자열을 “유사회문”(quasi palindrome)이라고 부른다. 예를 들어 ‘summuus’는 5번째나 혹은 6번째 문자 ‘u’를 제거하면 회문 ‘summus’이 되므로 이것은 유사회문이다. 여러분은 제시된 문자열이 그 자체로 회문인지, 또는 “유사회문”인지, 아니면 그 외 일반 문..

피곤한투티
'2021알고리즘' 태그의 글 목록