본문 바로가기

알고리즘 (Python)/Do it! 알고리즘 코딩테스트 with Python

(3)
[구간 합] 구간 합 구하기 5 (백준 11660번) - 파이썬(python) 구간 합 구하기 5 (11660번) 시간 제한 : 1초 메모리 제한 : 256 MB 문제 N×N개의 수가 N×N 크기의 표에 채워져 있다. (x1, y1)부터 (x2, y2)까지 합을 구하는 프로그램을 작성하시오. (x, y)는 x행 y열을 의미한다. 예를 들어, N = 4이고, 표가 아래와 같이 채워져 있는 경우를 살펴보자. 1 2 3 4 2 3 4 5 3 4 5 6 4 5 6 7 여기서 (2, 2)부터 (3, 4)까지 합을 구하면 3+4+5+4+5+6 = 27이고, (4, 4)부터 (4, 4)까지 합을 구하면 7이다. 표에 채워져 있는 수와 합을 구하는 연산이 주어졌을 때, 이를 처리하는 프로그램을 작성하시오. 입력 첫째 줄에 표의 크기 N과 합을 구해야 하는 횟수 M이 주어진다. (1 ≤ N ≤ 1..
[구간 합] 나머지 합 구하기 (백준 10986번) - 파이썬(python) 나머지 합 구하기 (10986번) 시간 제한 : 1초 메모리 제한 : 256 MB 문제 수 N개 A1, A2, ..., AN이 주어진다. 이때, 연속된 부분 구간의 합이 M으로 나누어 떨어지는 구간의 개수를 구하는 프로그램을 작성하시오. 즉, Ai + ... + Aj (i ≤ j) 의 합이 M으로 나누어 떨어지는 (i, j) 쌍의 개수를 구해야 한다. 입력 첫째 줄에 N과 M이 주어진다. (1 ≤ N ≤ 106, 2 ≤ M ≤ 103) 둘째 줄에 N개의 수 A1, A2, ..., AN이 주어진다. (0 ≤ Ai ≤ 109) 출력 첫째 줄에 연속된 부분 구간의 합이 M으로 나누어 떨어지는 구간의 개수를 출력한다. 예제 입력 5 3 1 2 3 1 2 예제 출력 7 해답 import sys input = sy..
[배열과 리스트] 숫자의 합 구하기 - 파이썬(python) 숫자의 합 (11720번) 시간 제한 : 1초 메모리 제한 : 256 MB 문제 N개의 숫자가 공백 없이 쓰여있다. 이 숫자를 모두 합해서 출력하는 프로그램을 작성하시오. 입력 첫째 줄에 숫자의 개수 N (1 ≤ N ≤ 100)이 주어진다. 둘째 줄에 숫자 N개가 공백없이 주어진다. 출력 입력으로 주어진 숫자 N개의 합을 출력한다. 예제 입력 1 1 예제 출력 1 해답 n = int(input()) numlist = list(input()) count = 0 for i in range(n): count = count + int(numlist[i]) print(count) 풀이 numlist 배열에 list형식으로 입력을 받아준 뒤, count할 때 int형으로 변환해서 계산합니다.