전체 글 153

[Python 3] BOJ 11967 불켜기

https://www.acmicpc.net/problem/11967  시작점인 (1,1)부터, "불이 켜져 있는"방들을 걸어다녀야 한다.각 방들을 움직이면서 다른 방의 불을 켤 수 있는 스위치들을 누르면서, 갈 수 있는 방들을 넓히는 것이 주요 포인트이다. 해당 문제가 일반적인 BFS문제랑 다른 이유는, 기존 bfs에서는 '내가 한 번 갈 수 없다고 판단한 장소는 다시 신경쓰지 않아도 된다.' 하지만, 여기 문제에서는 특정 방을 도착하면서 기존에 가지 못했던 방의 불이 켜지면서, 이제 갈 수 있는 방이 될 수도 있기 때문에, 방금 스위치를 켠 방이 기존에 내가 갔던 길로 연결되어 있는 방인지 확인해주는 과정을 통해 해결해야 한다. from collections import dequeimport sysin..

[C++] BOJ 18235 지금 만나러 갑니다 (배열의 초기화 정리)

https://www.acmicpc.net/problem/18235[English Translation]On the way returning to their home country "Quack Quack Land" , Duck and Buck (Author's translation: duck is 'ori' in korean language, and the syllable 'o' means number 5, and this problem decided to call a different duck yuk-ri, which literally translates into 6-ri, since 'yuk' is 6 in korean. just a word pun, and I just decided to call ..

[Python] BOJ 2022 사다리

https://www.acmicpc.net/problem/2022 [English Translation available through pressing 한국어 button and checking English] 해당 문제는 Binary Search를 이용하여 오차 범위 이내에서 두 빌딩 사이의 거리를 구하는 문제이다.먼저, 해당 문제를 diagram으로 나타내보겠다.x,y,c의 값은 문제와 같게 고정된 값으로 정해진다.x_h란 x를 빗변으로 갖는 삼각형의 높이, y_h는 y를 빗변으로 갖는 삼각형의 높이로 정의하였다.mid는 두 삼각형의 공통 밑변으로 정의하였다.mid의 값이 커지면 빗변의 길이가 고정되어 있기 때문에, x_h와 y_h의 값이 작아진다.mid의 값이 작아지면, x_h와 y_h의 값이 커질..

[C++] BOJ 4969: 월요일-토요일

https://www.acmicpc.net/problem/4969 [English] -> Click on the [영어] button on the side #include #include #include #include using namespace std;int main(){ int nums[300001]={}; fill(nums,nums+300001,0); for (int i=2;i>n; if (n==1) return 0; vector answer={}; for (int i = 2; i  해당 문제는 에라토스테네스의 체의 변형을 이용하여 풀었다.먼저, 숫자의 최대 사이즈인 30만을 배열로 저장하여, 월요일-토요일 소수 여부를 파악하였다.월요일-토요..