www.acmicpc.net/problem/14890 14890번: 경사로 첫째 줄에 N (2 ≤ N ≤ 100)과 L (1 ≤ L ≤ N)이 주어진다. 둘째 줄부터 N개의 줄에 지도가 주어진다. 각 칸의 높이는 10보다 작거나 같은 자연수이다. www.acmicpc.net 풀이 1) 이중포문을 돌면서 N^2 이차원 배열에서 라인을 한줄씩 받아온다. 2) boolean 배열을 새로만든다 3) 라인을 탐색한다 3-1) 만약 단차가 생긴다? -> 일단 단차가 2 이상이면 바로 continue 3-2) 그렇지 않다면 경사로를 설치할것이다. 3-3) 내려가는 단차일 경우 : i+1 부터 i+1+L 까지 검사해서 범위 밖이거나, 하나라도 map[i+1] 과 다르다면 continue. 그렇지 않다면 boolean[..
www.acmicpc.net/problem/1652 1652번: 누울 자리를 찾아라 첫째 줄에 방의 크기 N이 주어진다. N은 1이상 100이하의 정수이다. 그 다음 N줄에 걸쳐 N개의 문자가 들어오는데 '.'은 아무것도 없는 곳을 의미하고, 'X'는 짐이 있는 곳을 의미한다. www.acmicpc.net 풀이 1) 처음 map을 입력할때 가로방향은 split으로 계산 2) 입력한 map을 세로로 StringBuffer에 담아 String으로 변환 후 split으로 계산 3) 위의 두 계산결과를 따로 출력 주의사항 1) 풀다가 졸지 말자 package com.baekJoon; import java.io.BufferedReader; import java.io.IOException; import java.i..
www.acmicpc.net/problem/5212 5212번: 지구 온난화 첫째 줄에 지도의 크기 R과 C (1 ≤ R, C ≤ 10)가 주어진다. 다음 R개 줄에는 현재 지도가 주어진다. www.acmicpc.net 풀이 1) 2차원 배열을 탐색하다가 X가 나오면 사방탐색을 해서 X의 갯수를 또다른 int형 2차원 배열에 담음 2) minR, minC, maxR, maxC 변수를 X가 나올때마다 갱신 3) 갯수가 2 이하면 전부 '.'으로 바꿈 4) 2번 범위만큼 출력 주의사항 1) 새로 2차원 배열을 생성하지 않고 하나만가지고 하기 어려움 package com.baekJoon; import java.io.BufferedReader; import java.io.IOException; import ja..
www.acmicpc.net/problem/20291 20291번: 파일 정리 친구로부터 노트북을 중고로 산 스브러스는 노트북을 켜자마자 경악할 수밖에 없었다. 바탕화면에 온갖 파일들이 정리도 안 된 채 가득했기 때문이다. 그리고 화면의 구석에서 친구의 메시지를 www.acmicpc.net 풀이 1) TreeMap 을 생성 2) 입력값을 .을 기준으로 잘라서 뒷부분만 뽑아냄 3) 트리맵에 삽입. 3-1) 새로 들어오면 value = 1; 3-2) 이미 존재하면 value += 1; 4) 맵 출력 주의사항 1) 시간복잡도가 O(n^2)일 시 무조건 시간초과가 난다. package com.baekJoon; import java.io.BufferedReader; import java.io.BufferedWri..
www.acmicpc.net/problem/14499 14499번: 주사위 굴리기 첫째 줄에 지도의 세로 크기 N, 가로 크기 M (1 ≤ N, M ≤ 20), 주사위를 놓은 곳의 좌표 x y(0 ≤ x ≤ N-1, 0 ≤ y ≤ M-1), 그리고 명령의 개수 K (1 ≤ K ≤ 1,000)가 주어진다. 둘째 줄부터 N개의 줄에 지도 www.acmicpc.net 풀이 1) Dice라는 클래스를 만들거임. 멤버변수는 (행, 렬, 앞, 뒤, 상, 하, 좌, 우) 2) 굴리는 경우는 4가지 밖에 없다. (위, 아래, 오른쪽, 왼쪽) 메소드를 생성한다. 3) 방향을 Queue에 담는다. 4) Queue가 빌 때까지 빼내면서 방향에 따라 다음 좌표를 구한다 (nr, nc) 5) 범위체크(isIn[nr][nc])를..
www.acmicpc.net/problem/15662 15662번: 톱니바퀴 (2) 총 8개의 톱니를 가지고 있는 톱니바퀴 T개가 아래 그림과 같이 일렬로 놓여져 있다. 또, 톱니는 N극 또는 S극 중 하나를 나타내고 있다. 톱니바퀴에는 번호가 매겨져 있는데, 가장 왼쪽 톱니바퀴 www.acmicpc.net 풀이 1) 톱니바퀴를 2번 저장할거임. 2차원 배열에 하나, Deque에 하나. 2) Queue 에 입력된 (톱니바퀴 번호, 방향)정보를 담음 3) Queue가 빌때까지 꺼내면서 돌아가는지 체크함 3-1) 먼저 해당 번호를 true하고 왼쪽, 오른쪽 검사를 함 4) 배열 탐색하면서 true인 애들만 돌릴거임 4-1) |방향 - 인덱스| 가 짝수면 동일 4-2) |방향 - 인덱스| 가 홀수면 반대 4-..
www.acmicpc.net/problem/2290 2290번: LCD Test 첫째 줄에 두 개의 정수 s와 n이 들어온다. (1 ≤ s ≤ 10, 0 ≤ n ≤ 9,999,999,999)이다. n은 LCD 모니터에 나타내야 할 수 이며, s는 크기이다. www.acmicpc.net 풀이 1) 2*s+2 만큼의 StringBuffer 배열을 만듬 2) 각 숫자가나올때마다 배열을 채워넣음 3) 경우의 수는 한정적이다 3-1) 상, 중상, 중, 중하, 하 로 나눈다. 4) 케이스에 맞는 함수를 만들어서 상황에 맞게 쓴다 주의사항 1) 맨 처음 시작할때 공백은 넣지 않는다 2) 숫자 사이에는 공백이 존재한다. package com.baekJoon; import java.io.BufferedReader; im..
www.acmicpc.net/problem/3568 3568번: iSharp 입력으로 주어진 변수 선언문을 문제의 조건에 맞게 변형한 뒤, 한 줄에 하나씩 출력한다. 변수형과 변수명 사이에는 공백이 하나 있어야 한다. 출력은 입력으로 주어진 변수 선언문에서 변수가 www.acmicpc.net 풀이 1) 먼저 입력값을 StringTokeniger로 자름 2) boolean형 변수를 활용해 맨처음 부분만 type 변수에 따로 저장한다. 3) 다음 토큰부터 한번 더 boolean형 변수를 활용해 특수문자가 나올때까지 끊어준다. 변수명 val 변수에 저장. 4) 이제 남은 문자열은 스택에 저장하는데 괄호부분은 반대로 넣어야하며 세미콜론은 넣지 않는다. 5) StringBuffer에 type + 스택의 내용 + ..
- Total
- Today
- Yesterday
- BFS
- S3
- java
- 리액트
- 시뮬레이션
- 객체지향
- 리액트 네이티브
- react native
- PriorityQueue
- g4
- DFS
- 그리디
- map
- 문자열
- Spring
- S2
- 알고리즘
- 현꾸라지
- 자바
- G5
- 백준
- react
- Spring Boot
- 구현
- 우선순위큐
- laugh4mile
- SWEA
- 다익스트라
- 코딩새내기
- 백트래킹
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |