[Python] 1713 - 후보 추천하기 (실버2)
·
Coding Test/Solution
1. 문제 설명 https://www.acmicpc.net/problem/1713 1713번: 후보 추천하기 첫째 줄에는 사진틀의 개수 N이 주어진다. (1 ≤ N ≤ 20) 둘째 줄에는 전체 학생의 총 추천 횟수가 주어지고, 셋째 줄에는 추천받은 학생을 나타내는 번호가 빈 칸을 사이에 두고 추천받은 순서대 www.acmicpc.net 2. 아이디어 이게 한창 파이썬 공부 겸 알고리즘 공부할 때였기 때문에 del 연산을 처음 써봤었다. 구현 자체는 어렵지 않다. 문제 조건에 주는 대로 그대로 구현하면 된다. 추천한 후보를 순서대로 훑으면서 액자에 걸려있지 않다면 액자(result)에 걸고(append), 추천수는 cnt리스트에 따로 저장한다. 생각해보면 딕셔너리 같은 걸로 같이 묶어서 저장해도 나쁘지 않..
[Python] 1074 - Z (실버1)
·
Coding Test/Solution
1. 문제 설명 https://www.acmicpc.net/problem/1074 1074번: Z 한수는 크기가 2N × 2N인 2차원 배열을 Z모양으로 탐색하려고 한다. 예를 들어, 2×2배열을 왼쪽 위칸, 오른쪽 위칸, 왼쪽 아래칸, 오른쪽 아래칸 순서대로 방문하면 Z모양이다. N > 1인 경우, 배열을 www.acmicpc.net 2. 아이디어 일전에 다루었던 색종이 자르기 문제(BOJ - 2630)와 유사하다. 분할 탐색을 하되, 시간 제한이 0.5초밖에 안 되기 때문에 여유롭게 처음부터 읽고 있다가는 곧바로 시간 초과로 탈락할 수 있다. 사실 너무 뻔한 방법이다. 4분할을 했을 때 그곳에 내가 탐색하고자 하는 좌표가 포함되지 않는 사분면이라면 탐색하지 않고 건너뛰고, 해당 타일의 전체 개수만 계..
[Python] 6588 - 골드바흐의 추측 (실버1) : 에라토스테네스의 체
·
Coding Test/Solution
1. 문제 설명 https://www.acmicpc.net/problem/6588 6588번: 골드바흐의 추측 각 테스트 케이스에 대해서, n = a + b 형태로 출력한다. 이때, a와 b는 홀수 소수이다. 숫자와 연산자는 공백 하나로 구분되어져 있다. 만약, n을 만들 수 있는 방법이 여러 가지라면, b-a가 가장 큰 www.acmicpc.net 오일러..굉장히 존경스러운 수학자시긴 하지만 시험 기간에는 별로 반갑지 않은..ㅠㅠㅠ 2. 아이디어 소수를 구하는 가장 빠른 방법이다. (아마도..?) "소수를 구하는 문제 -> 에라토스테네스의 체"라고 머리에 쑤셔넣어놓아야 할 정도로 중요하다. 나도 간만에 봤더니 잊어 먹어서 다시 공부했지만 ㅎㅎ. 에라토스테네스의 체 이 방법을 사용하지 않으면..시간 초과..
[Python] 2504 - 괄호의 값 (실버1)
·
Coding Test/Solution
1. 문제 설명 https://www.acmicpc.net/problem/2504 2504번: 괄호의 값 4개의 기호 ‘(’, ‘)’, ‘[’, ‘]’를 이용해서 만들어지는 괄호열 중에서 올바른 괄호열이란 다음과 같이 정의된다. 한 쌍의 괄호로만 이루어진 ‘()’와 ‘[]’는 올바른 괄호열이다. 만일 www.acmicpc.net 2. 아이디어 굉장히 유명한 문제 중 하나로 전형적인 stack 자료구조를 이용한 풀이방법을 썼다. 입력받은 값이 '[', '(', ')', '(', '(', ')', '[', ']', ')', ']'라고 하자. 우선 스택에 '['라는 정보를 담아놓고 그 다음에 들어오는 정보를 확인한다. '('는 '['와 매칭되는 쌍이 아니므로 마찬가지로 스택에 쌓는다. 다음 정보는 ')'이므로..