본문 바로가기

반응형

Python

[백준] 2581번 - 소수 / 파이썬 코드 1. 문제 https://www.acmicpc.net/problem/2581 자연수 M과 N이 주어질 때 M이상 N이하의 자연수 중 소수인 것을 모두 골라 이들 소수의 합과 최솟값을 찾는 프로그램을 작성하시오. 예를 들어 M=60, N=100인 경우 60이상 100이하의 자연수 중 소수는 61, 67, 71, 73, 79, 83, 89, 97 총 8개가 있으므로, 이들 소수의 합은 620이고, 최솟값은 61이 된다. 2. 코드 #https://www.acmicpc.net/problem/2581 min_n = int(input()) max_n = int(input()) sosu = [] for i in range(min_n, max_n+1): flag = 0 if i != 1: for j in range(.. 더보기
[백준] 2839번 - 설탕 배달 (파이썬 ) 1. 문제 https://www.acmicpc.net/problem/2839 상근이는 요즘 설탕공장에서 설탕을 배달하고 있다. 상근이는 지금 사탕가게에 설탕을 정확하게 N킬로그램을 배달해야 한다. 설탕공장에서 만드는 설탕은 봉지에 담겨져 있다. 봉지는 3킬로그램 봉지와 5킬로그램 봉지가 있다. 상근이는 귀찮기 때문에, 최대한 적은 봉지를 들고 가려고 한다. 예를 들어, 18킬로그램 설탕을 배달해야 할 때, 3킬로그램 봉지 6개를 가져가도 되지만, 5킬로그램 3개와 3킬로그램 1개를 배달하면, 더 적은 개수의 봉지를 배달할 수 있다. 상근이가 설탕을 정확하게 N킬로그램 배달해야 할 때, 봉지 몇 개를 가져가면 되는지 그 수를 구하는 프로그램을 작성하시오. 2. 코드 n = int(input()) cnt =.. 더보기
[백준] 10250번 - ACM호텔 문제 풀이 1. 문제 https://www.acmicpc.net/problem/10250 10250번: ACM 호텔 프로그램은 표준 입력에서 입력 데이터를 받는다. 프로그램의 입력은 T 개의 테스트 데이터로 이루어져 있는데 T 는 입력의 맨 첫 줄에 주어진다. 각 테스트 데이터는 한 행으로서 H, W, N, 세 정수 www.acmicpc.net 2. 코드 n = int(input()) for i in range(n): h, w, n = map(int, input().split()) weight = n//h + 1 height = n%h if n%h == 0: weight = n//h height = h print(height, '{0:02d}'.format(weight), sep = '') 3. 알고리즘 코드에서 .. 더보기
[백준] 2292번 - 벌집 1. 문제 https://www.acmicpc.net/problem/2292 육각형으로 이루어진 벌집이 있다. 그림에서 보는 바와 같이 중앙의 방 1부터 시작해서 이웃하는 방에 돌아가면서 1씩 증가하는 번호를 주소로 매길 수 있다. 숫자 N이 주어졌을 때, 벌집의 중앙 1에서 N번 방까지 최소 개수의 방을 지나서 갈 때 몇 개의 방을 지나가는지(시작과 끝을 포함하여)를 계산하는 프로그램을 작성하시오. 예를 들면, 13까지는 3개, 58까지는 5개를 지난다. 2. 코드 #1: 1(0) / 2: 6(6)(2~7) / 3 : 12(18)(8~19) / 4: 18(36)(20~37) n = int(input()) cnt = 1 temp = 6 while n-1 > 0: n -= temp cnt += 1 temp.. 더보기
[백준] 1152번 - 단어의 개수 (feat. 파이썬 단어 개수 구하는 법) 1. 문제 영어 대소문자와 공백으로 이루어진 문자열이 주어진다. 이 문자열에는 몇 개의 단어가 있을까? 이를 구하는 프로그램을 작성하시오. 단, 한 단어가 여러 번 등장하면 등장한 횟수만큼 모두 세어야 한다. 첫 줄에 영어 대소문자와 공백으로 이루어진 문자열이 주어진다. 이 문자열의 길이는 1,000,000을 넘지 않는다. 단어는 공백 한 개로 구분되며, 공백이 연속해서 나오는 경우는 없다. 또한 문자열은 공백으로 시작하거나 끝날 수 있다. 첫째 줄에 단어의 개수를 출력한다. 2. 코드 s = [] s = input().split() print(len(s)) 3. 설명 별 거 없다. [string].split()해주고 결과의 길이를 구해주면 된다. 더보기
[백준] 10809번 - 알파벳 찾기 (feat. 문자 ascii로 변환) https://www.acmicpc.net/problem/10809 1. 문제 알파벳 소문자로만 이루어진 단어 S가 주어진다. 각각의 알파벳에 대해서, 단어에 포함되어 있는 경우에는 처음 등장하는 위치를, 포함되어 있지 않은 경우에는 -1을 출력하는 프로그램을 작성하시오 첫째 줄에 단어 S가 주어진다. 단어의 길이는 100을 넘지 않으며, 알파벳 소문자로만 이루어져 있다. 각각의 알파벳에 대해서, a가 처음 등장하는 위치, b가 처음 등장하는 위치, ... z가 처음 등장하는 위치를 공백으로 구분해서 출력한다. 만약, 어떤 알파벳이 단어에 포함되어 있지 않다면 -1을 출력한다. 단어의 첫 번째 글자는 0번째 위치이고, 두 번째 글자는 1번째 위치이다. 2. 코드 #https://www.acmicpc.ne.. 더보기
[백준] 평균은 넘겠지 - 4344 (feat. python 소수점 자리 수 출력 - format) 1. 문제 대학생 새내기들의 90%는 자신이 반에서 평균은 넘는다고 생각한다. 당신은 그들에게 슬픈 진실을 알려줘야 한다. 첫째 줄에는 테스트 케이스의 개수 C가 주어진다. 둘째 줄부터 각 테스트 케이스마다 학생의 수 N(1 ≤ N ≤ 1000, N은 정수)이 첫 수로 주어지고, 이어서 N명의 점수가 주어진다. 점수는 0보다 크거나 같고, 100보다 작거나 같은 정수이다. 각 케이스마다 한 줄씩 평균을 넘는 학생들의 비율을 반올림하여 소수점 셋째 자리까지 출력한다. 2. 코드 #https://www.acmicpc.net/problem/4344 n = int(input()) score = [] for i in range(n): score = list(map(int, input().split())) aver.. 더보기
[백준] sys.stdin.readline() 사용 (빠른 A+B) #https://www.acmicpc.net/problem/15552 import sys n = int(input()) for i in range(n): a,b = map(int, sys.stdin.readline().split()) print(a+b) 참고블로그 : https://velog.io/@yeseolee/Python-%ED%8C%8C%EC%9D%B4%EC%8D%AC-%EC%9E%85%EB%A0%A5-%EC%A0%95%EB%A6%ACsys.stdin.readline [Python 문법] 파이썬 입력 받기(sys.stdin.readline) 파이썬으로 코딩 테스트를 준비한다면, 반드시 알아야 할 입력방식인 sys.stdin.readline()에 대한 정리 입니다. velog.io 더보기

반응형