www.acmicpc.net/problem/14467 14467번: 소가 길을 건너간 이유 1 3번 소는 위치 1, 0, 1에서 관찰되었으므로 길을 최소 두 번 건넜음을 확인할 수 있다. 4번 소도 길을 한 번 건넜으며, 나머지 소는 길을 건넌 기록이 확인되지 않는다. www.acmicpc.net 풀이 1) 맵 입력값들을 넣을거임 2) 처음들어가는 경우와 아닌경우를 나눔 3) 처음 들어가면 위치를 넣어주고 아닌경우엔 answer을 1증가 시키면서 위치를 바꿔준다. 4) 반복이 끝나면 answer를 출력한다 주의사항 1) 없음 package com.baekJoon; import java.io.BufferedReader; import java.io.IOException; import java.io.Input..
www.acmicpc.net/problem/14891 14891번: 톱니바퀴 첫째 줄에 1번 톱니바퀴의 상태, 둘째 줄에 2번 톱니바퀴의 상태, 셋째 줄에 3번 톱니바퀴의 상태, 넷째 줄에 4번 톱니바퀴의 상태가 주어진다. 상태는 8개의 정수로 이루어져 있고, 12시방향부터 www.acmicpc.net 풀이 1) 톱니바퀴를 2번 저장할거임. 2차원 배열에 하나, Deque에 하나 2) 4개의 톱니바퀴가 돌아가는 상황을 분리하여 if문 노가다 3) 시계방향으로 돌아갈 경우 Deque의 맨 뒤 값을 맨 앞에다 넣고 반시계방향은 반대. 4) 한 사이클이 끝나면 2차원 배열을 초기화시켜줌 5) 모든 사이클이 끝나면 dq[0] + dq[1]*2 + dq[2]*4 + dq[3]*8 출력 주의사항 1) 방향 혼동 ㄴ..
www.acmicpc.net/problem/2661 2661번: 좋은수열 첫 번째 줄에 1, 2, 3으로만 이루어져 있는 길이가 N인 좋은 수열들 중에서 가장 작은 수를 나타내는 수열만 출력한다. 수열을 이루는 1, 2, 3들 사이에는 빈칸을 두지 않는다. www.acmicpc.net 풀이 1) 숫자를 담을 StringBuffer 를 생성 2) depth가 N 이 될때 까지 dfs를 돌릴거임 3) StringBuffer의 마지막 글자가 1,2,3 일 경우를 나누어서 4) 좋은 수열인지 체크하여 백트래킹 5) depth가 N이면 StringBuffer를 출력하고 끝 주의사항 1) .subString(Start, End) 에서 End는 포함 안됨 package com.baekJoon; import java...
www.acmicpc.net/problem/13458 13458번: 시험 감독 첫째 줄에 시험장의 개수 N(1 ≤ N ≤ 1,000,000)이 주어진다. 둘째 줄에는 각 시험장에 있는 응시자의 수 Ai (1 ≤ Ai ≤ 1,000,000)가 주어진다. 셋째 줄에는 B와 C가 주어진다. (1 ≤ B, C ≤ 1,000,000) www.acmicpc.net 풀이 1 1) 감독의 수 = Math.ceil((double)(응시자 수 - 총 감독) / 부 감독) 1) 숫자가 아니라 문자열로 입력 2) 한글자씩 더하면서 sum과 carry를 이용하여 계산 주의사항 1) 없음 package com.baekJoon; import java.io.BufferedReader; import java.io.IOException..
www.acmicpc.net/problem/3190 3190번: 뱀 'Dummy' 라는 도스게임이 있다. 이 게임에는 뱀이 나와서 기어다니는데, 사과를 먹으면 뱀 길이가 늘어난다. 뱀이 이리저리 기어다니다가 벽 또는 자기자신의 몸과 부딪히면 게임이 끝난다. 게임 www.acmicpc.net 풀이 1) 뱀을 관리할 deque과 이동을 관리할 queue와 사과를 관리할 list를 사용한다 2) 뱀의 시작점 (1,1) 을 덱에 담고, 방향은 0으로 설정 후 시작. (나는 0,0으로 맞춤) 3) 큐에서 하나씩 빼면서 진행. 방향에 따라서 go0~go3 을 정함 4) 벽 or 몸통에 부딛히는 조건을 무사히 통과하면 방향을 바꿔줌 5) 사과를 먹으면 deque.offerFirst 만, 아니면 deque.pollLa..
www.acmicpc.net/problem/11559 11559번: Puyo Puyo 현재 주어진 상황에서 몇연쇄가 되는지 출력하라. (하나도 터지지 않는다면 0을 출력하면 된다.) www.acmicpc.net 풀이 1) 이차원배열을 탐색하여 .이 아닌 경우 bfs를 돌려서 같은 뿌요가 4개이상 뭉쳐있는 곳을 탐색 2) 4개 이상 뭉쳐 있는 뿌요가 존재한다면 flag를 true 로바꿈 2-1) . 으로 바꿈 2-3) 시작점을 . 으로 바꿈 4) bfs를 호출한 곳에서 flag를 기준으로 더 진행할지 말지 결정함 4-1) 돌릴때마다 answer++, 맵 아래로 정렬 주의사항 1) 맵 아래로 정렬할 때 stack을 이용하면 편함 2) 자신의 풀이 방법에 의심을 가지지 말것. package com.baekJo..
www.acmicpc.net/problem/7569 7569번: 토마토 첫 줄에는 상자의 크기를 나타내는 두 정수 M,N과 쌓아올려지는 상자의 수를 나타내는 H가 주어진다. M은 상자의 가로 칸의 수, N은 상자의 세로 칸의 수를 나타낸다. 단, 2 ≤ M ≤ 100, 2 ≤ N ≤ 100, www.acmicpc.net 풀이 1) 먼저 3차원 배열에 입력값을 담고 값이 1이면 queue에 저장함 2) bfs를 돌림 3) 조건에 맞는 결과값 도출 4) 편ㅡ안 주의사항 1) h따로 rc따로이다. 이중포문으로 동시에 하려다 망했다 2) 전부익는지 안 익는지 판별하는 문제가 아니다. 문제를 제대로 안읽으면 개고생한다. 3) 그외엔 딱히.. package com.baekJoon; import java.io.Buf..
www.acmicpc.net/problem/10757 10757번: 큰 수 A+B 두 정수 A와 B를 입력받은 다음, A+B를 출력하는 프로그램을 작성하시오. www.acmicpc.net 풀이 1) sum 과 carry로 한 글자씩 계산 주의사항 1) 숫자가 길어서 int 나 long 으로 연산할 수 없다. package com.baekJoon; import java.io.BufferedReader; import java.io.IOException; import java.io.InputStreamReader; import java.io.StringReader; import java.util.StringTokenizer; public class BJ_B5_10757_큰수A더하기B { static Buffe..
- Total
- Today
- Yesterday
- react
- 문자열
- BFS
- 시뮬레이션
- Spring
- 구현
- 코딩새내기
- G5
- 현꾸라지
- 백트래킹
- Spring Boot
- laugh4mile
- DFS
- 객체지향
- 리액트
- map
- PriorityQueue
- 리액트 네이티브
- react native
- 다익스트라
- g4
- 자바
- 알고리즘
- S2
- 우선순위큐
- 그리디
- java
- SWEA
- 백준
- S3
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |