목록2024/02/22 (7)
미소를뿌리는감자의 코딩
https://www.acmicpc.net/problem/1002 1002번: 터렛 각 테스트 케이스마다 류재명이 있을 수 있는 위치의 수를 출력한다. 만약 류재명이 있을 수 있는 위치의 개수가 무한대일 경우에는 $-1$ 출력한다. www.acmicpc.net 1. 접근 방법 이전에 자바로 풀어보았던 1002번 터렛을 다시 python으로 풀어보았다. 2개의 원이 접하는 점의 개수를 구하는 방법으로 문제를 접근하였다. 1. 두 점의 사이의 거리가 0 일 때, - 반지름의 길이가 같다면 : 무한 - 반지름의 길이가 다르다면 : 0 2. 반지름을 더한 것 = d : - 같다면 : 1 - > 라면 : 0 4. 그 외 - 2 총 7 가지의 경우의 수이며, 두 점에서 만나는 경우를 else로 생각하고 접근한다면 ..
https://www.acmicpc.net/problem/5052 5052번: 전화번호 목록 첫째 줄에 테스트 케이스의 개수 t가 주어진다. (1 ≤ t ≤ 50) 각 테스트 케이스의 첫째 줄에는 전화번호의 수 n이 주어진다. (1 ≤ n ≤ 10000) 다음 n개의 줄에는 목록에 포함되어 있는 전화번호가 www.acmicpc.net 1. 접근 방법 접두어인 경우가 없어야 한다는 점에 주목했다. 따라서 2개의 수를 비교할 때, 어떤 수가 큰 수인지 작은 수 인지 판단을 하였다. 이후 큰 수를 앞에서부터 작은 수의 크기만큼 slice를 한 후, slice된 큰 수 == 작은 수 인지 확인해 주었다. 이후 2중 for문을 이용해서, 2개의 수를 받아와 주었다. 이때, sort()를 먼저하고 2개의 수를 받아..
https://www.acmicpc.net/problem/2108 2108번: 통계학 첫째 줄에 수의 개수 N(1 ≤ N ≤ 500,000)이 주어진다. 단, N은 홀수이다. 그 다음 N개의 줄에는 정수들이 주어진다. 입력되는 정수의 절댓값은 4,000을 넘지 않는다. www.acmicpc.net 1. 접근 방법 조금 직관적인 문제였다. 약간 까다로운 부분이라 함은 최빈값을 구하는 부분인 것 같다. 최빈값을 구하는 곳은 Counter를 이용해서 풀어주었다. counter = Counter(nums) # 아이템, 횟수 로 정리됨. Counter({1: 1, 2: 2, 3: 3}) # 딕셔너리와 유사한 형태로 저장 Counter를 이용하게 되면 이런 식으로 정리되게 된다. 이제 .most_common()을 ..
https://leetcode.com/problems/sort-colors/description/ Sort Colors - LeetCode Can you solve this real interview question? Sort Colors - Given an array nums with n objects colored red, white, or blue, sort them in-place [https://en.wikipedia.org/wiki/In-place_algorithm] so that objects of the same color are adjacent, with the colors leetcode.com 1. 접근 방법 sort()로 풀면 쉽게 풀릴 문제이지만, 친히 ' You must solv..