연속합 (1912)
1912 문제 n개의 정수로 이루어진 임의의 수열이 주어진다. 우리는 이 중 연속된 몇 개의 수를 선택해서 구할 수 있는 합 중 가장 큰 합을 구하려고 한다. 단, 수는 한 개 이상 선택해야 한다. 예를 들어서 10, -4, 3, 1, 5, 6, -35, 12, 21, -1 이라는 수열이 주어졌다고 하자. 여기서 정답은 12+21인 33이 정답이 된다. 입력 첫째 줄에 정수 n(1 ≤ n ≤ 100,000)이 주어지고 둘째 줄에는 n개의 정수로 이루어진 수열이 주어진다. 수는 -1,000보다 크거나 같고, 1,000보다 작거나 같은 정수이다. 출력 첫째 줄에 답을 출력한다. 답 n = int(input()) a = list(map(int, input().split())) lst = [a[0]] for i..
2023. 2. 8.
기본수학1 (1712, 2292, 1193, 2869)
1712 문제 월드전자는 노트북을 제조하고 판매하는 회사이다. 노트북 판매 대수에 상관없이 매년 임대료, 재산세, 보험료, 급여 등 A만원의 고정 비용이 들며, 한 대의 노트북을 생산하는 데에는 재료비와 인건비 등 총 B만원의 가변 비용이 든다고 한다. 예를 들어 A=1,000, B=70이라고 하자. 이 경우 노트북을 한 대 생산하는 데는 총 1,070만원이 들며, 열 대 생산하는 데는 총 1,700만원이 든다. 노트북 가격이 C만원으로 책정되었다고 한다. 일반적으로 생산 대수를 늘려 가다 보면 어느 순간 총 수입(판매비용)이 총 비용(=고정비용+가변비용)보다 많아지게 된다. 최초로 총 수입이 총 비용보다 많아져 이익이 발생하는 지점을 손익분기점(BREAK-EVEN POINT)이라고 한다. A, B, C..
2022. 9. 13.
문자열(11654, 11720, 10809, 2675, 1157)
11654 문제 알파벳 소문자, 대문자, 숫자 0-9중 하나가 주어졌을 때, 주어진 글자의 아스키 코드값을 출력하는 프로그램을 작성하시오. 입력 알파벳 소문자, 대문자, 숫자 0-9 중 하나가 첫째 줄에 주어진다. 출력 입력으로 주어진 글자의 아스키 코드 값을 출력한다. 답 asc = input() print(ord(asc)) 아스키코드를 구하는 함수가 있었던것 같아서 구글링을 해봤다! 역시나 있구만..!!! ord() 함수가 바로 그것!! chr() 함수는 그 반대를 계산해준다! 아스키코드에 해당하는 숫자를 입력하면 그 문자열을 출력한다! ex) ord(0) = 48, chr(4) = 0 11720 문제 N개의 숫자가 공백 없이 쓰여있다. 이 숫자를 모두 합해서 출력하는 프로그램을 작성하시오. 입력 첫..
2022. 9. 10.
1차원 배열(10818, 2562, 3052, 1546, 8958, 4344)
10818 문제 N개의 정수가 주어진다. 이때, 최솟값과 최댓값을 구하는 프로그램을 작성하시오. 입력 첫째 줄에 정수의 개수 N (1 ≤ N ≤ 1,000,000)이 주어진다. 둘째 줄에는 N개의 정수를 공백으로 구분해서 주어진다. 모든 정수는 -1,000,000보다 크거나 같고, 1,000,000보다 작거나 같은 정수이다. 출력 첫째 줄에 주어진 정수 N개의 최솟값과 최댓값을 공백으로 구분해 출력한다. 답 1) import sys n = int(sys.stdin.readline()) a = list(map(int, sys.stdin.readline().split())) print(min(a), max(a)) 2) import sys a = int(sys.stdin.readline()) lst= list..
2022. 9. 6.
반복문(2438, 2439, 10871, 10952, 10951, 1110)
2438 문제 첫째 줄에는 별 1개, 둘째 줄에는 별 2개, N번째 줄에는 별 N개를 찍는 문제 입력 첫째 줄에 N(1 ≤ N ≤ 100)이 주어진다. 출력 첫째 줄부터 N번째 줄까지 차례대로 별을 출력한다. 답 import sys a = int(sys.stdin.readline()) for i in range(a): print('*'*(i+1)) input 대신 int(sys.stdin.readine()) 쓰기 2439 문제 첫째 줄에는 별 1개, 둘째 줄에는 별 2개, N번째 줄에는 별 N개를 찍는 문제 하지만, 오른쪽을 기준으로 정렬한 별(예제 참고)을 출력하시오. 입력 첫째 줄에 N(1 ≤ N ≤ 100)이 주어진다. 출력 첫째 줄부터 N번째 줄까지 차례대로 별을 출력한다. 답 import sys..
2022. 9. 5.
반복문(2739, 10950, 8393, 25304, 15552, 11021, 11022)
2739 문제 N을 입력받은 뒤, 구구단 N단을 출력하는 프로그램을 작성하시오. 출력 형식에 맞춰서 출력하면 된다. 입력 첫째 줄에 N이 주어진다. N은 1보다 크거나 같고, 9보다 작거나 같다. 출력 출력형식과 같게 N*1부터 N*9까지 출력한다. 답 1) a = int(input()) for i in range(1, 10): print(a, '*', i, '=', a*i) 2) a = int(input()) for i in range(1, 10): print(f"{a} * {i} = {a * i}") print(a, '*', i, '=', a*i) 이렇게 쓸 수도 있지만 print(f"{a} * {i} = {a * i}") 이렇게 쓸 수도 있다는것!! 10950 문제 두 정수 A와 B를 입력받은 다음..
2022. 9. 3.