2167번: 2차원 배열의 합
첫째 줄에 배열의 크기 N, M(1 ≤ N, M ≤ 300)이 주어진다. 다음 N개의 줄에는 M개의 정수로 배열이 주어진다. 배열에 포함되어 있는 수는 절댓값이 10,000보다 작거나 같은 정수이다. 그 다음 줄에는
www.acmicpc.net
[오답] → 시간초과
우선 배열의 크기가 최대 300*300이므로 최대 90000개의 index를 가진다.
이 때 총 K번의 반복문을 실행해야 하는데, K의 범위는 1 ≤ K ≤ 10,000 이므로 최대 9억번의 연산을 해야한다.
그러므로 Python3는 시간초과가 발생한다. (Pypy3는 통과한다고 한다.)
시간초과가 되지 않으려면 dp를 이용하는 방법이 있다.
dp는 아직 배우지 않아서 나중에 다시 시도해보기로 하였다.
[참고]
https://blog.naver.com/parkjh9876/221867004374
2167 : 2차원 배열의 합
위는 첫번째 방법입니다.단순히 배열에 있는 값을 주어진 x1, y1, x2, y2를 통해 total을 구해주면 되는 문...
blog.naver.com
'알고리즘 공부 > 백준 > Python3' 카테고리의 다른 글
[백준 파이썬] #15649: N과 M(1) (0) | 2021.01.02 |
---|---|
[백준 파이썬] #2752: 세수정렬 (0) | 2021.01.02 |
[백준 파이썬] #1834: 나머지와 몫이 같은 수 (0) | 2021.01.01 |
[백준 파이썬] #1453: 피시방 알바 (0) | 2021.01.01 |
[백준 파이썬] #1357: 뒤집힌 덧셈 (0) | 2020.12.31 |