# beakjoon

회전하는 큐 - 1021
풀이큐는 원래 FIFO성질을 가진다. 이 문제는 양방향 큐를 요구하는 문제이다.이 문제를 해결하기 위해서는 Index를 알아내는 메서드가 필요한데 Q에는 없어서 LinkedList<인티저> list = new LinkedList<>(); 를 선언해서 문제를

안전 영역 - 2468
문제 풀이 일단, 결론부터 얘기 하자면 max변수를 이용해 최고높이를 구하는 과정에서 max=0으로 선언했더니 런타임 에러가 떳다. 최댓값을 구할 땐 INTEGER.MIN_VALUE로 선언하자. 각 높이 별로 solution을 돌려줘야한다. 또한 체크배열을 이용해

영역 구하기 - 2583
백준은 항상 느끼지만, 프로그래머스와 달리 입력받는게 제일 귀찮고 깐깐하다. ㅋㅋ 신경쓰자.1\. k개수 만큼 사각형인 부분을 boarda에 1로 입력해둔다. 그러고 이제 나머지 영역을 구해야한다.2\. solution()함수로 board를 탐색하고 여기서 0이나오면

늑대와양 - 16956
우선, 어려운 문제는 아니다. 조금 헷갈렸던 건 문제의 출력과 똑같이 답을 내야한다고 생각했는데 그냥 늑대가 양에게 접근만 못하게 하면 무엇이든 정답이된다.입력받을 때 유의.입력받은 arr을 탐색하면서 "W" 늑대를 만나면 상하좌우로 "D"울타리를 쳐주면된다.이때 늑대

[Python] 여행 가자 - 유니온파인드
해당 문제 링크참고한 다른 사람 코드에서 내가 수정해서 작성해보았다.참고한 코드는 유니온 파인드의 값을 넣을 때 1부터가 아닌 0부터 넣고 경로 체크를 할때는 -1를 넣어서 parents 배열 자체가 -1, 0, 0, 0으로 만들어지게 한다. 즉 예시에 맞게 보자면,

단지 번호 붙이기 - 2667
우선적으로 연결되어있는 번지수를 체크하는 문제이다. DFS,BFS가 가능하다. 나는 DFS로 접근.제일 먼저, solution함수를 이용해 board를 순회하면서 ch배열 체크하면서 1이 나오면 cnt를 증가하면서 ArrayList인 arr에 저장하는 식으로 구현.DF
[Beakjoon] 17478_재귀함수가 뭔가요?
문제이해 입력 : 재귀 횟수 N(1 ≤ N ≤ 50) 출력 : "재귀함수가 뭔가요?" "잘 들어보게. 옛날옛날 한 산 꼭대기에 이세상 모든 지식을 통달한 선인이 있었어. 마을 사람들은 모두 그 선인에게 수많은 질문을 했고, 모두 지혜롭게 대답해 주었지. 그의 답은 대부분 옳았다고 하네. 그런데 어느 날, 그 선인에게 한 선비가 찾아와서 물었어."라고 답
[백준] 14890번: 경사로 문제 풀이
시작 전 회고 처음에 문제에 접근할 땐 왼쪽 오른쪽 방향에서 각각 내리막길을 놓을 수 있는지 검사하고, 위쪽, 아래쪽에서 각각 검사하는 방식으로 진행했었다. 하지만 잘못된 접근이었고, 내리막길만 검사할게 아니라 오르막길의 가능 여부도 따져야했기 때문에, 양옆 방향에서 각각 검사할게 아닌 한쪽 방향에서 한쪽만 검사해도 충분한 문제였다. > 접근 방법 ...
[백준] 16235번: 나무재테크 문제 풀이
https://www.acmicpc.net/problem/16235자료구조 및 메서드 선언이번 문제에서는 필요한 자료구조가 조금 많았다.살아있는 나무, 죽은 나무, 번식된 나무의 정보를 저장할 리스트들이 필요했는데, 간편하에 ArrayDeque로 통일하여 생성
[Beakjoon] 1012_유기농 배추
배추 1개에 배추흰지렁이가 1마리라도 살고 있으면 지렁이는 인접한 배추로 이동이 가능하다. 인접한 배추도 해충 보호가 가능하다. 인접한 배추는 상하좌우에 위치한 경우이다. 배추흰지렁이의 총 개수를 구하여라 대공사입니다. 밖으로 빼는 버릇을 들이자
[백준] 17144번: 미세먼지 안녕! 문제 풀이
https://www.acmicpc.net/problem/17144문제 접근 방식문제를 읽고 미세먼지 확산과 공기청정기에 청정 기능을 각각 메서드로 구분지어야겠다는 생각이 들었다. 다만, 공기청정기로 먼지들을 각각 시계방향, 반시계 방향으로 동시에 회전시키기엔

[Python] 별 찍기-10 - 재귀
해당 문제 링크Git - 코드문제 해석도 안되고, 어떻게 풀어야 할지 감이 안와 참고하여 문제를 풀어보았다.n==1일 때는 '\*'만 출력되고 우리는 이 '\*'을 사용하여 모든 틀을 만든다.n==3일 때는 '\*\*\*','\* \*','\*\*\*'으로 만들어진다