반응형

ALGORITHM 292

백준 BAEKJOON 1225번 이상한 곱셈 [PYTHON/파이썬]

백준 BAEKJOON 1225번 이상한 곱셈 [PYTHON/파이썬] https://www.acmicpc.net/problem/1225 1225번: 이상한 곱셈 첫째 줄에 A와 B가 주어진다. 주어지는 두 수는 모두 10,000자리를 넘지 않는 음이 아닌 정수이다. 수가 0인 경우에는 0만 주어지며, 그 외의 경우 수는 0으로 시작하지 않는다. www.acmicpc.net 처음에는 for 문을 2개 사용해서 풀었더니 시간 초과가 떴다. 머리를 굴리던 중 각 자리수를 다 더하여 서로 곱해주니 같은 결과가 나왔다. // (1+2+3) * (4+5) = 54 import sys input = sys.stdin.readline A, B = input().split() A_lst = list(map(int, A))..

백준 BAEKJOON 1159번 농구 경기 [PYTHON/파이썬]

백준 BAEKJOON 1159번 농구 경기 [PYTHON/파이썬] https://www.acmicpc.net/problem/1159 1159번: 농구 경기 상근이는 농구의 세계에서 점차 영향력을 넓혀가고 있다. 처음에 그는 농구 경기를 좋아하는 사람이었다. 농구에 대한 열정은 그를 막을 수 없었고, 결국 상근이는 농구장을 청소하는 일을 시작 www.acmicpc.net 먼저 알파뱃을 확인하기 위해 길이가 26이고 0으로 채워진 리스트를 만들었다. 그리고 이름의 이름의 앞글자를 확인하여 해당 인덱스에 +1 시켜주었다. 만약 그 중 5명 이상이 된다면 선수로 선발할 수 있는 사람들을 출력하고 아니라면 PREDAJA 를 출력했다. N = int(input()) lst = [0] * 26 for _ in ran..

백준 BAEKJOON 1026번 보물 [PYTHON/파이썬]

백준 BAEKJOON 1026번 보물 [PYTHON/파이썬] https://www.acmicpc.net/problem/1026 1026번: 보물 첫째 줄에 N이 주어진다. 둘째 줄에는 A에 있는 N개의 수가 순서대로 주어지고, 셋째 줄에는 B에 있는 수가 순서대로 주어진다. N은 50보다 작거나 같은 자연수이고, A와 B의 각 원소는 100보다 작거 www.acmicpc.net 배열 A는 내림차순으로 정렬, 배열 B는 오름차순으로 정렬 후 인덱스 0번부터 N-1번 까지 곱해주면 최솟값이 나온다. N = int(input()) A_lst = list(map(int, input().split())) B_lst = list(map(int, input().split())) A_lst = sorted(A_lst,..

백준 BAEKJOON 1524번 세준세비 [PYTHON/파이썬]

백준 BAEKJOON 1524번 세준세비 [PYTHON/파이썬] https://www.acmicpc.net/problem/1524 1524번: 세준세비 첫째 줄에 테스트 케이스의 개수 T가 주어진다. T는 100보다 작거나 같다. 각 테스트 케이스는 다음과 같이 이루어져 있다. 첫째 줄에 N과 M이 들어오고, 둘째 줄에는 세준이의 병사들의 힘이 들어 www.acmicpc.net 세준, 세비의 병사들을 리스트로 입력 받은 뒤 내림차순으로 정렬시켜줬다. if 문을 통해 세준 병사와 세비의 병사가 같은 힘일 때 세비의 병사가 죽게끔 구현해줬다. t = int(input()) for i in range(t) : input()# 각 테스트 케이스는 줄 바꿈으로 구분 N, M = map(int, input().sp..

백준 BAEKJOON 1247번 부호 [PYTHON/파이썬]

백준 BAEKJOON 1247번 부호 [PYTHON/파이썬] https://www.acmicpc.net/problem/1247 1247번: 부호 총 3개의 테스트 셋이 주어진다. 각 테스트 셋의 첫째 줄에는 N(1 ≤ N ≤ 100,000)이 주어지고, 둘째 줄부터 N개의 줄에 걸쳐 각 정수가 주어진다. 주어지는 정수의 절댓값은 9223372036854775807보다 작거 www.acmicpc.net 처음에 풀었을 때 시간 초과가 떠서 import sys를 사용해서 풀었다. import sys input = sys.stdin.readline for _ in range(3) : t = int(input()) hap = 0 for i in range(t) : hap += int(input()) if hap ..

백준 BAEKJOON 1100번 하얀 칸 [PYTHON/파이썬]

백준 BAEKJOON 1100번 하얀 칸 [PYTHON/파이썬] https://www.acmicpc.net/problem/1100 1100번: 하얀 칸 체스판은 8×8크기이고, 검정 칸과 하얀 칸이 번갈아가면서 색칠되어 있다. 가장 왼쪽 위칸 (0,0)은 하얀색이다. 체스판의 상태가 주어졌을 때, 하얀 칸 위에 말이 몇 개 있는지 출력하는 프로그램 www.acmicpc.net 하얀 칸 위에 말이 있는 경우만 cnt 값에 +1 해줬다. cnt = 0 for i in range(8) : horse = input() if i % 2 == 0 : for j in range(0, 8, 2) : if horse[j] == 'F' : cnt += 1 elif i % 2 != 0 : for j in range(1, 8..

백준 BAEKJOON 1085번 직사각형에서 탈출 [PYTHON/파이썬]

백준 BAEKJOON 1085번 직사각형에서 탈출 [PYTHON/파이썬] https://www.acmicpc.net/problem/1085 1085번: 직사각형에서 탈출 한수는 지금 (x, y)에 있다. 직사각형은 각 변이 좌표축에 평행하고, 왼쪽 아래 꼭짓점은 (0, 0), 오른쪽 위 꼭짓점은 (w, h)에 있다. 직사각형의 경계선까지 가는 거리의 최솟값을 구하는 프로그램 www.acmicpc.net (x,y) 지점에서 (0,0) 과 (w,h) 점의 각각 차이 중 가장 작은 것이 최솟값이다. x, y, w, h = map(int, input().split()) print(min(x, y, w-x, h-y))

백준 BAEKJOON 1076번 저항 [PYTHON/파이썬]

백준 BAEKJOON 1076번 저항 [PYTHON/파이썬] https://www.acmicpc.net/problem/1076 1076번: 저항 전자 제품에는 저항이 들어간다. 저항은 색 3개를 이용해서 그 저항이 몇 옴인지 나타낸다. 처음 색 2개는 저항의 값이고, 마지막 색은 곱해야 하는 값이다. 저항의 값은 다음 표를 이용해서 구한 www.acmicpc.net 주어진 표를 이해하면 쉽다. 색상이 들어있는 리스트를 만들어준 뒤 index를 활용하여 풀었다. 값은 0~9, 곱은 10의 0~9승을 이용하면 된다. color = ['black', 'brown', 'red', 'orange', 'yellow', 'green', 'blue', 'violet', 'grey', 'white'] a = str(co..

백준 BAEKJOON 1037번 약수 [PYTHON/파이썬]

백준 BAEKJOON 1037번 약수 [PYTHON/파이썬] https://www.acmicpc.net/problem/1037 1037번: 약수 첫째 줄에 N의 진짜 약수의 개수가 주어진다. 이 개수는 50보다 작거나 같은 자연수이다. 둘째 줄에는 N의 진짜 약수가 주어진다. 1,000,000보다 작거나 같고, 2보다 크거나 같은 자연수이고, 중복되 www.acmicpc.net 약수의 가장 큰 값과 가장 작은 값을 서로 곱해주어 풀었다. n = int(input()) num_list = list(map(int, input().split())) print(max(num_list)*min(num_list))

백준 BAEKJOON 1440번 타임머신 [PYTHON/파이썬]

백준 BAEKJOON 1440번 타임머신 [PYTHON/파이썬] https://www.acmicpc.net/problem/1440 1440번: 타임머신 첫째 줄에 시간이 주어진다. 시간은 DD:DD:DD와 같은 꼴로 주어진다. 항상 8자리(:도 포함)로만 들어오며, D는 0-9 사이의 숫자이다. www.acmicpc.net 주어진 시,분,초를 리스트에 담았다. hour 에 해당하는 1~12의 숫자 리스트와 minute와 second 에 해당하는 0~59의 숫자 리스트를 만든 뒤 3개의 for 문을 사용하여 조건에 해당하면 result 값에 +1 하여 풀었다. t_machine = list(map(int, input().split(':'))) hour = [h for h in range(1, 13)] mi..

반응형