본문 바로가기

Python 문제풀이/백준(baekjoon)7

7. python 기본 수학2 - 백준 1978, 백준 1929 백준 1978 소수 찾기 문제 주어진 수 N개 중에서 소수가 몇 개인지 찾아서 출력하는 프로그램을 작성하시오. 입력 첫 줄에 수의 개수 N이 주어진다. N은 100 이하이다. 다음으로 N개의 수가 주어지는데 수는 1,000 이하의 자연수이다. 출력 주어진 수들 중 소수의 개수를 출력한다. #백준 1978 N = int(input()) #입력받을 개수입력 count = 0 #소수가 있을 때마다 +1 number = map(int, input().split()) #입력받을 숫자입력 for num in number: if num > 1 : for j in range(2, num): #for else 문을 사용 if num % j == 0: # 나눈 나머지가 0이면 소수가 아님 break else: count .. 2022. 9. 15.
6. python 기본 수학1 - 백준 1712, 백준 2292 백준 1712 손익분기점 문제 월드전자는 노트북을 제조하고 판매하는 회사이다. 노트북 판매 대수에 상관없이 매년 임대료, 재산세, 보험료, 급여 등 A만원의 고정 비용이 들며, 한 대의 노트북을 생산하는 데에는 재료비와 인건비 등 총 B만원의 가변 비용이 든다고 한다. 예를 들어 A=1,000, B=70이라고 하자. 이 경우 노트북을 한 대 생산하는 데는 총 1,070만원이 들며, 열 대 생산하는 데는 총 1,700만원이 든다. 노트북 가격이 C만원으로 책정되었다고 한다. 일반적으로 생산 대수를 늘려 가다 보면 어느 순간 총 수입(판매비용)이 총 비용(=고정비용+가변비용)보다 많아지게 된다. 최초로 총 수입이 총 비용보다 많아져 이익이 발생하는 지점을 손익분기점(BREAK-EVEN POINT)이라고 한다.. 2022. 9. 14.
5. python 문자열 - 백준 1157, 백준 2941, 백준 1316 백준 1157 문제 알파벳 대소문자로 된 단어가 주어지면, 이 단어에서 가장 많이 사용된 알파벳이 무엇인지 알아내는 프로그램을 작성하시오. 단, 대문자와 소문자를 구분하지 않는다. 입력 첫째 줄에 알파벳 대소문자로 이루어진 단어가 주어진다. 주어지는 단어의 길이는 1,000,000을 넘지 않는다. 출력 첫째 줄에 이 단어에서 가장 많이 사용된 알파벳을 대문자로 출력한다. 단, 가장 많이 사용된 알파벳이 여러 개 존재하는 경우에는 ?를 출력한다. 백준 1157 S = input().lower() #apple mylist = list(set(S)) #['a','p','l','e'] cnt_list = [] #[1,2,1,1] for i in mylist: #a count = S.count(i) # apple.. 2022. 9. 13.
4. python 배열 - 백준 2562, 백준 8958 백준 2562 문제 9개의 서로 다른 자연수가 주어질 때, 이들 중 최댓값을 찾고 그 최댓값이 몇 번째 수인지를 구하는 프로그램을 작성하시오. 예를 들어, 서로 다른 9개의 자연수 3, 29, 38, 12, 57, 74, 40, 85, 61 이 주어지면, 이들 중 최댓값은 85이고, 이 값은 8번째 수이다. 출력 첫째 줄에 최댓값을 출력하고, 둘째 줄에 최댓값이 몇 번째 수인지를 출력한다. arr = [] for i range(9):# 길이 9 arr.append(int(input())) #서로다른 9개 자연수 입력 print(max(arr)# 최댓값출력 print(arr.index(max(arr))+1) # 최대값이 몇 번째 수인지 출력 #index(x) 함수는 리스트에 x값이 있으면 x의 위치 값을 .. 2022. 9. 6.
3. python 반복문 - 백준 2439, 백준 1110 백준 2439 첫째 줄에는 별 1개, 둘째 줄에는 별 2개, N번째 줄에는 별 N개를 찍는 문제 하지만, 오른쪽을 기준으로 정렬한 별(예제 참고)을 출력하시오. s = int(input())#입력받기 for i in range(1,s+1): a = (i*'*') print(a.rjust(s)) #결과: 5 * ** *** **** ***** - rjust함수 문자열.rjust(전체 자리 숫자, 공백이 있을 경우 공백을 채울 텍스트) 오른쪽 정렬 -ljust함수 왼쪽 정렬 백준 1110 제일 생각을 많이 했던 문제 0보다 크거나 같고, 99보다 작거나 같은 정수가 주어질 때 다음과 같은 연산을 할 수 있다. 먼저 주어진 수가 10보다 작다면 앞에 0을 붙여 두 자리 수로 만들고, 각 자리의 숫자를 더한다... 2022. 9. 5.
2. python 조건문 - 백준 2884, 백준 2525 백준 2884 상근이는 매일 아침 알람을 듣고 일어난다. 알람을 듣고 바로 일어나면 다행이겠지만, 항상 조금만 더 자려는 마음 때문에 매일 학교를 지각하고 있다.상근이는 모든 방법을 동원해보았지만, 조금만 더 자려는 마음은 그 어떤 것도 없앨 수가 없었다.이런 상근이를 불쌍하게 보던, 창영이는 자신이 사용하는 방법을 추천해 주었다.바로 "45분 일찍 알람 설정하기"이다.이 방법은 단순하다. 원래 설정되어 있는 알람을 45분 앞서는 시간으로 바꾸는 것이다. 어차피 알람 소리를 들으면, 알람을 끄고 조금 더 잘 것이기 때문이다. 이 방법을 사용하면, 매일 아침 더 잤다는 기분을 느낄 수 있고, 학교도 지각하지 않게 된다.현재 상근이가 설정한 알람 시각이 주어졌을 때, 창영이의 방법을 사용한다면, 이를 언제로.. 2022. 9. 2.
1. python 입출력, 사칙연산 - 백준 2557, 백준10869 백준 2557 Hello World! 출력하기 print('Hello World!') 백준10869 두 자연수 A와 B가 주어진다. 이때, A+B, A-B, A*B, A/B(몫), A%B(나머지)를 출력하는 프로그램을 작성하시오. a, b = map(int, input().split()) print(a + b) print(a - b) print(a * b) print(a // b) print(a % b) map(함수, 반복 가능한 객체) : 반복 가능한 객체의 요소들에 함수를 적용 문자열.split('특정문자') : 문자열의 특정 문자를 기준으로 나눠줌(특정문자는 삭제) 2022. 9. 1.
728x90