[BOJ][Python] 16236 아기 상어
·
🚩 Coding Test/Baekjoon
Overview체감 난이도: ★★☆☆☆문제 레벨: Gold 3문제 유형: 시뮬레이션, bfs풀이 상태: 답안참고 / 스스로 해결추후: 다시 풀어보기 / 간단 복습 / 완벽 이해 [문제] [코드]문제 풀이 과정- 구현 조건 정리 - 코드 실행 위치 확인 (코드 위치에 따라 실행이 달라짐) [구현하면서 발생한 문제점과 주의할 점]* deque로 bfs를 구현함을 잊지 말기 from collections import dequeQ = deque()  1. BFS 방법은 생각했으나, 최단 거리 측정 문제처럼 dist 설정하는 방법을 몰랐음-> dist[nx][ny] = dist[x][y] + 1 (이전 거리 값 + 1)  2. dist, fish, Q 값 초기화 위치 문제 -> bfs 밖에서 초기화 해주는 바람에..
[Python] 2차원 배열 회전 방법(시계/반시계) - 좌표값, 전치
·
🚩 Coding Test
당신은 배열을 회전시키는 방법을 몇 개나 알고 있습니까...? 좌표 값으로 회전시키는 방법만 생각하다가 전치 시키는 방법을 알게 되어선형대수가 나와 망치로 한 대 맞은 기분이 들었고까먹을까봐 블로그에 정리하러 왔읍니다... 😵 먼저, 대부분이 알고 있는 좌표 값으로 배열을 회전시킨다. 1. 좌표 값으로 회전1(0, 0)2(0, 1)3(0, 2)시계 방향으로 90도 회전하면, (i, j) -> ( n - j - 1, i ) 이 된다. (ex. 7(2, 0) -> 7(3-0-1=0, 2)7(0, 0)4(0, 1)1(0, 2)4(1, 0)5(1, 1)6(1, 2)8(1, 0)5(1, 1)2(1, 0)7(2, 0)8(2, 1)9(2, 2)9(2, 0)6(2, 1)3(2, 0) grid = [[1, 2, 3],..
[Code Tree][Python] IL Simulation 십자 모양 폭발
·
🚩 Coding Test/Code Tree
Overview체감 난이도: ★☆☆☆☆ * 떨어뜨리는 방법만 알면 구현은 어렵지 않다. 문제 레벨: IL / Simulation / 격자 안에서 터지고 떨어지는 경우 / 연습 문제 문제 유형: Simulation 풀이 상태: 답안참고 / 스스로 해결추후: 다시 풀어보기 / 간단 복습 / 완벽 이해 [문제]Trail 4 / Chapter 1 / Lesson 3 / 연습 문제 Code Tree | Learning to Code with ConfidenceA super-comprehensive, meticulously arranged Coding Learning Curriculum engineered by Algorithm Experts composed of former International Olympia..
[Code Tree][Python] IL Simulation 기울어진 직사각형의 회전
·
🚩 Coding Test/Code Tree
Overview체감 난이도: ★☆☆☆☆ 기울어진 직사각형(완탐) 문제와 n차원 바람(회전) 문제를 섞은 문제 문제 레벨: IL / Simulation / 격자 안에서 밀고 당기 / 연습 문제 문제 유형: Simulation 풀이 상태: 답안참고 / 스스로 해결추후: 다시 풀어보기 / 간단 복습 / 완벽 이해 [문제] Trail 4 / Chapter 1 / Lesson 2 / 연습 문제  Code Tree | Learning to Code with ConfidenceA super-comprehensive, meticulously arranged Coding Learning Curriculum engineered by Algorithm Experts composed of former International..
[Code Tree][Python] IL Simulation 기울어진 직사각형
·
🚩 Coding Test/Code Tree
Overview체감 난이도: ★★☆☆☆문제 레벨: IL / Simulation / 격자 안에서 완전탐색 / 연습 문제 문제 유형: Simulation풀이 상태: 답안참고 / 스스로 해결추후: 다시 풀어보기 / 간단 복습 / 완벽 이해 [문제] Trail 4 / Chapter 1 / Lesson 1 / 연습 문제  Code Tree | Learning to Code with ConfidenceA super-comprehensive, meticulously arranged Coding Learning Curriculum engineered by Algorithm Experts composed of former International Olympiad in Informatics (IOI) medalists.w..
[Code Tree][Python] IL Simulation 2차원 바람
·
🚩 Coding Test/Code Tree
Overview체감 난이도: ★★☆☆☆ 90도 회전을 구현하는 게 어려웠음문제 레벨: IL / Simulation / 격자 안에서 밀고 당기 / 연습 문제 문제 유형: Simulation풀이 상태: 답안참고 / 스스로 해결추후: 다시 풀어보기 / 간단 복습 / 완벽 이해 [문제]Trail 4 / Chapter 1 / Lesson 2 / 연습 문제https://www.codetree.ai/trails/complete/curated-cards/challenge-The-2D-wind-blows/description?page=1&page_size=20 Code Tree | Learning to Code with ConfidenceA super-comprehensive, meticulously arranged C..
[Code Tree][Python] IL Simulation 1차원 바람
·
🚩 Coding Test/Code Tree
Overview체감 난이도: ★★☆☆☆문제 레벨:  IL / Simulation / 격자 안에서 밀고 당기 / 연습 문제 문제 유형: Simulation 풀이 상태: 답안참고 / 스스로 해결추후: 다시 풀어보기 / 간단 복습 / 완벽 이해 [문제]Trail 4 / Chapter 1 / Lesson 2 / 연습 문제https://www.codetree.ai/trails/complete/curated-cards/challenge-The-1D-wind-blows/description Code Tree | Learning to Code with ConfidenceA super-comprehensive, meticulously arranged Coding Learning Curriculum engineered b..
[BOJ][Python] 2630 색종이 만들기 / 분할정복, 재귀
·
🚩 Coding Test/Baekjoon
Overview체감 난이도: ★★★☆☆문제 레벨: 실버 2문제 유형: 분할정복, 재귀풀이 상태: 답안참고 / 스스로 해결추후: 다시 풀어보기 / 간단 복습 / 완벽 이해 [문제]예시: 8x8 종이의 경우1단계: 8x8 전체 확인↓ 다른 색 발견2단계: 4x4로 4등분↓ 각 부분 확인3단계: 필요한 부분만 2x2로 분할↓ 각 부분 확인4단계: 필요한 부분만 1x1로 분할[코드]분할 정복(Divide and Conquer) 1. 분할(Divide)원래 문제를 더 작은 하위 문제들로 나눈다. 각 하위 문제는 원래 문제와 같은 성격을 가진다. 보통 원 문제의 크기를 절반으로 나누는 경우가 많다. 2. 정복(Conquer)나눈 하위 문제들을 재귀적으로 해결한다. 하위 문제가 충분히 작아지면 직접 해결한다. 작은 ..
[BOJ][Python] 17626 Four Squares
·
🚩 Coding Test/Baekjoon
Overview체감 난이도: ★★☆☆☆문제 레벨: 실버 3문제 유형: 브루트포스, DP풀이 상태: 답안참고 / 스스로 해결추후: 다시 풀어보기 / 간단 복습 / 완벽 이해 [문제] [코드]이 문제를 보고 정리에 대해 많이 아는 사람이 문제를 잘 풀겠구나 싶었다. 라그랑주의 네 제곱수 정리(Lagrange's four-square theorem)모든 자연수를 4개의 제곱수 합으로 표현할 수 있다. 임의의 수를 4의 배수와 나머지(0, 1, 2, 3 중 하나)로 나눈다. 4의 배수는 각 자리수도 4의 배수로 표현된다. 홀수는 항상 4개의 홀수 제곱수의 합으로 표현 가능하다. 짝수는 4개의 짝수 제곱수의 합으로 표현 가능하다.  처음에는 가장 적은 수의 제곱수로 나타내려고 하니 큰 제곱수부터 더해가는 식으로 ..
[BOJ][Python] 18110 solved.ac / round() 반올림 안 되는 문제
·
🚩 Coding Test/Baekjoon
Overview체감 난이도: ★☆☆☆☆문제 레벨: 실버 4문제 유형: 수학, 구현풀이 상태: 답안참고 / 스스로 해결추후: 다시 풀어보기 / 간단 복습 / 완벽 이해 [문제] [코드]round 함수로 반올림을 구현했으나, 반올림이 되지 않는 반례 문제가 발생한다. (당황)# 일반적으로 기대하는 반올림1.5 → 22.5 → 33.5 → 4# 실제 round() 동작 (짝수 반올림)1.5 → 2 (2가 짝수라서 올림)2.5 → 2 (2가 짝수라서 내림)3.5 → 4 (4가 짝수라서 올림) round 함수가 위와 같이 동작되는데, "Bankers' Rounding" 방식이라서 그렇단다...  도입 이유전통적 반올림은 항상 올림하므로 큰 데이터셋에서 상향 편향 발생은행/금융 계산에서 편향 최소화 필요짝수 반올림..