본문 바로가기

파이썬20

백준 10816 파이썬 https://www.acmicpc.net/problem/10816 10816번: 숫자 카드 2 첫째 줄에 상근이가 가지고 있는 숫자 카드의 개수 N(1 ≤ N ≤ 500,000)이 주어진다. 둘째 줄에는 숫자 카드에 적혀있는 정수가 주어진다. 숫자 카드에 적혀있는 수는 -10,000,000보다 크거나 같고, 10, www.acmicpc.net 코드 n = int(input()) Ncard = sorted(list(map(int,input().split()))) m = int(input()) Mcard = list(map(int,input().split())) dic_count = {} for card in Ncard: if card in dic_count: dic_count[card] += 1 else.. 2022. 5. 26.
백준 10250 파이썬 https://www.acmicpc.net/problem/10250 10250번: ACM 호텔 프로그램은 표준 입력에서 입력 데이터를 받는다. 프로그램의 입력은 T 개의 테스트 데이터로 이루어져 있는데 T 는 입력의 맨 첫 줄에 주어진다. 각 테스트 데이터는 한 행으로서 H, W, N, 세 정수 www.acmicpc.net 코드 a = int(input()) for i in range(a): h, w, n = list(map(int,input().split())) floor = n%h num = n//h+1 if n%h == 0: floor = h num = n//h print(floor*100 + num) 풀이 층과 호실을 구하는 건 쉽게 구할 수 있을 것이다. 하지만 n % h == 0 일 때 층과 .. 2022. 5. 15.
백준 10866 (duque) 파이썬 https://www.acmicpc.net/problem/10866 10866번: 덱 첫째 줄에 주어지는 명령의 수 N (1 ≤ N ≤ 10,000)이 주어진다. 둘째 줄부터 N개의 줄에는 명령이 하나씩 주어진다. 주어지는 정수는 1보다 크거나 같고, 100,000보다 작거나 같다. 문제에 나와있지 www.acmicpc.net 코드 from collections import deque import sys box = deque() n = int(input()) for i in range(n): # tmp = list(input().split()) tmp = sys.stdin.readline().split() if tmp[0] == 'push_front': box.appendleft(tmp[1]) elif .. 2022. 5. 10.
백준 2164 (deque) 파이썬 https://www.acmicpc.net/problem/2164 2164번: 카드2 N장의 카드가 있다. 각각의 카드는 차례로 1부터 N까지의 번호가 붙어 있으며, 1번 카드가 제일 위에, N번 카드가 제일 아래인 상태로 순서대로 카드가 놓여 있다. 이제 다음과 같은 동작을 카드가 www.acmicpc.net 코드 from collections import deque n = int(input()) box = deque() count = 0 for i in range (n): box.append(i + 1) while len(box) != 1: count += 1 if count % 2 == 1: box.popleft() else: box.append(box.popleft()) print(box[0]) .. 2022. 5. 9.
백준 11758 CCW 파이썬 https://www.acmicpc.net/problem/11758 11758번: CCW 첫째 줄에 P1의 (x1, y1), 둘째 줄에 P2의 (x2, y2), 셋째 줄에 P3의 (x3, y3)가 주어진다. (-10,000 ≤ x1, y1, x2, y2, x3, y3 ≤ 10,000) 모든 좌표는 정수이다. P1, P2, P3의 좌표는 서로 다르다. www.acmicpc.net 코드 box = [] for _ in range(3): box.append(list(map(int,input().split()))) def ccw(p1,p2,p3): return (p1[0]*p2[1] + p2[0]*p3[1] + p3[0]*p1[1] - (p2[0]*p1[1] + p3[0]*p2[1] + p1[0]*p3[1])).. 2022. 5. 9.
백준 10845번 큐 (파이썬) https://www.acmicpc.net/problem/10845 10845번: 큐 첫째 줄에 주어지는 명령의 수 N (1 ≤ N ≤ 10,000)이 주어진다. 둘째 줄부터 N개의 줄에는 명령이 하나씩 주어진다. 주어지는 정수는 1보다 크거나 같고, 100,000보다 작거나 같다. 문제에 나와있지 www.acmicpc.net 코드 from sys import stdin n = int(input()) q = [] for i in range(n): cmd = stdin.readline().split() if cmd[0] == 'push': q.append(cmd[1]) elif cmd[0] == 'pop': if len(q) == 0: print(-1) else: print(q[0]) del q[0] el.. 2022. 4. 23.
백준 1605 한수 (파이썬) https://www.acmicpc.net/problem/1065 1065번: 한수 어떤 양의 정수 X의 각 자리가 등차수열을 이룬다면, 그 수를 한수라고 한다. 등차수열은 연속된 두 개의 수의 차이가 일정한 수열을 말한다. N이 주어졌을 때, 1보다 크거나 같고, N보다 작거나 www.acmicpc.net ○ 풀이 def hansu(n): count = 0 if n ['1','2','3']) if n_split[0] - n_split[1] == n_split[1] - n_split[2]: # 등차수열 확인 (한수 조건) count += 1 return count n = int(input()) print(hansu(n)) ○ 배운 점 코드를 꼼꼼히 확인하는 습관을 기르자. 처음에 8번째 줄 코드에서 n_.. 2021. 8. 30.
Programmers Summer/Winter Coding(~2018) 소수 만들기 https://programmers.co.kr/learn/courses/30/lessons/12977 코딩테스트 연습 - 소수 만들기 주어진 숫자 중 3개의 수를 더했을 때 소수가 되는 경우의 개수를 구하려고 합니다. 숫자들이 들어있는 배열 nums가 매개변수로 주어질 때, nums에 있는 숫자들 중 서로 다른 3개를 골라 더했을 때 programmers.co.kr ○ 문제 풀이 def solution(nums): from itertools import combinations import math def find(n): if n == 1: return False for i in range(2, int(math.sqrt(n)) + 1): if n % i == 0: return False return Tru.. 2021. 8. 25.
Programmers Weekly challenge - 4주차 https://programmers.co.kr/learn/courses/30/lessons/84325?language=python3 코딩테스트 연습 - 4주차 개발자가 사용하는 언어와 언어 선호도를 입력하면 그에 맞는 직업군을 추천해주는 알고리즘을 개발하려고 합니다. 아래 표는 5개 직업군 별로 많이 사용하는 5개 언어에 직업군 언어 점수를 부 programmers.co.kr 재미있는 구현 문제 ○ 문제풀이 def solution(table, languages, preference): returnTableCount = [] returnTable = [] tablesum = 0 realtable = [] # 있으면 index위치 반환, 없으면 0 반환 # 분야별로 정리 for i in range(5): r.. 2021. 8. 25.