일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | ||||
4 | 5 | 6 | 7 | 8 | 9 | 10 |
11 | 12 | 13 | 14 | 15 | 16 | 17 |
18 | 19 | 20 | 21 | 22 | 23 | 24 |
25 | 26 | 27 | 28 | 29 | 30 | 31 |
- DFS
- [1차]캐시
- 이모티콘할인행사
- 섬연결하기
- 17404
- 트리의지름
- 파괴되지않은건물
- 사이클게임
- 두큐합같게만들기
- 프림알고리즘
- 백준
- 거리두기확인하기
- javascript
- 그래프탐색
- 큐
- 프로그래머스
- 위상정렬
- 최단경로
- 자물쇠와열쇠
- 구현
- 최소스패닝트리
- 도넛과막대그래프
- 징검다리건너기
- DP
- 다익스트라
- 파이썬
- 알고리즘
- RGB거리2
- BFS
- 벽부수고이동하기
- Today
- Total
블로그 이름 뭐로 하지
[알고리즘/파이썬] 프로그래머스 - 파괴되지 않은 건물 (다시 풀기) 본문
문제
https://school.programmers.co.kr/learn/courses/30/lessons/92344
프로그래머스
코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요.
programmers.co.kr
풀이
처음 봤을 때 뭐야 문제가..왜이렇게 쉬워...?!!!!!라면서 5분 내에 풀고 싱글벙글이었는데 아니나 다를까 정답률이 30퍼 대인 이유가 있었다. 효율성 테스트에서 멸망해버림 ㅋㅋㅋㅋ ㅠ
해시를 써야할까...? 그래도 복잡도가 O*N*M에서 벗어나기 힘들거 같은데 ... 라는 생각을 하면 삽질만 하다가 절대 내 머리로는 이 효율성을 못 뚫을 것 같아서 해설을 봤다.
2022 카카오 신입 공채 1차 온라인 코딩테스트 for Tech developers 문제해설
지난 2021년 9월 11일 토요일 오후 2시부터 7시까지 5시간 동안 2022 KAKAO BLIND RECRUITMENT 1차 코딩 테스트가 진행되었습니다. 테스트에는 총 7개의 문제가 출제되었으며, 개발 언어는 C++, Java, JavaScript, K
tech.kakao.com
누적합 문제였다. ㅋㅋㅋ ㅠ 아 너무 천재같은 발상이라서 할 말을 잃었지만 당시 효율성 정답률이 1퍼대여서 내가 특출나게 머리가 나쁜건 아니었구나 하고 안심했다.
https://school.programmers.co.kr/questions/25471
프로그래머스
코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요.
programmers.co.kr
프로그래머스 질문하기 탭에서 이 분도 설명을 굉장히 잘 적어주셨다! 보고 나니 아하..그렇구나..하고 이해는 되는데 이걸 어떻게 문제를 보고 떠올릴 수 있는지... ㅠ ㅠ 난 다시 태어나도 못 그럴 것 같아서 슬프다... 이 문제는 3주 후에 다시 풀어봐야겠다!
코드
def solution(board, skill):
answer = 0
m = len(board[0])
n = len(board)
arr = [[0 for _ in range(m+1)] for _ in range(n+1)]
for a in skill:
s_type,r1,c1,r2,c2,degree = a[0],a[1],a[2],a[3],a[4],a[5]
if s_type == 1:
degree *= -1
arr[r1][c1] += degree
arr[r1][c2+1] += -1*degree
arr[r2+1][c1] += -1 * degree
arr[r2+1][c2+1] += degree
for i in range(n):
for j in range(m):
arr[i+1][j] += arr[i][j]
for i in range(n):
for j in range(m):
arr[i][j+1] += arr[i][j]
for i in range(n):
for j in range(m):
value = arr[i][j] + board[i][j]
if value > 0:
answer += 1
return answer
'알고리즘' 카테고리의 다른 글
[알고리즘/파이썬] 백준 5639 - 이진 검색 트리 (0) | 2024.01.16 |
---|---|
[알고리즘/파이썬] 백준 2638 - 치즈 (0) | 2024.01.16 |
[알고리즘/파이썬] 프로그래머스 - 네트워크 (0) | 2024.01.15 |
[알고리즘/파이썬] 백준 2248 - 별 찍기 11 (1) | 2024.01.14 |
[알고리즘/파이썬] 백준 2206 - 벽 부수고 이동하기 (1) | 2024.01.14 |