반응형

Python 2

백준: 나머지 합 구하기 - python (구간합)

문제 출처 https://www.acmicpc.net/submit/10986 문제 풀이 힌트 -N의 최댓값이 106이라 연산량이 작게 느껴질 수 있다.그러나 각 숫자에 대해서 모든 구간합을 또 구해야 하기 때문에 1초 안에 연산은 불가능하다 ~  구간 합 배열을 이용해보자 누적 합 계산: 리스트 A의 누적 합을 계산하여 새로운 리스트 S에 저장합니다.나머지 계산: 누적 합 배열 S의 각 요소를 m으로 나눈 나머지를 계산합니다.나머지 카운트: 나머지 값이 몇 번 나오는지 카운트하는 리스트 C를 만들어 각 나머지를 카운트합니다.나머지 0 처리: 나머지가 0인 경우는 바로 답에 포함시킵니다. (변경딘 합 배열의 원소 값이 0이라는 뜻은 원본 리스트의 0부터 i 구간까지의 구간 합ㅇ이 이미 m으로 나누어 떨어진..

백준 11660 : 구간 합 구하기 - python

문제N×N개의 수가 N×N 크기의 표에 채워져 있다. (x1, y1)부터 (x2, y2)까지 합을 구하는 프로그램을 작성하시오. (x, y)는 x행 y열을 의미한다.예를 들어, N = 4이고, 표가 아래와 같이 채워져 있는 경우를 살펴보자.1234234534564567여기서 (2, 2)부터 (3, 4)까지 합을 구하면 3+4+5+4+5+6 = 27이고, (4, 4)부터 (4, 4)까지 합을 구하면 7이다.표에 채워져 있는 수와 합을 구하는 연산이 주어졌을 때, 이를 처리하는 프로그램을 작성하시오.입력첫째 줄에 표의 크기 N과 합을 구해야 하는 횟수 M이 주어진다. (1 ≤ N ≤ 1024, 1 ≤ M ≤ 100,000) 둘째 줄부터 N개의 줄에는 표에 채워져 있는 수가 1행부터 차례대로 주어진다. 다음 ..

반응형