
https://www.acmicpc.net/problem/17779 17779번: 게리맨더링 2 재현시의 시장 구재현은 지난 몇 년간 게리맨더링을 통해서 자신의 당에게 유리하게 선거구를 획정했다. 견제할 권력이 없어진 구재현은 권력을 매우 부당하게 행사했고, 심지어는 시의 이름 www.acmicpc.net 풀이 1) 4중 for문으로 모든 경우의 r, c, d1, d2 를 구한다. 2) 5번 선거구를 구한다. -> 먼저 4각형을 5로 채운 후 4개의 모서리를 깎는 방식으로 했다. 3) 나머지 선거구를 구한다. 4) 모든 선거구의 인구수를 populration 배열에 저장한 후 최대값과 최소값의 차이의 최소값을 갱신한다. 5) 최소값의 차이의 최소값을 출력한다. 주의사항 1) 5번 선거구를 구할때 어렵게 ..

https://www.acmicpc.net/problem/17140 17140번: 이차원 배열과 연산 첫째 줄에 r, c, k가 주어진다. (1 ≤ r, c, k ≤ 100) 둘째 줄부터 3개의 줄에 배열 A에 들어있는 수가 주어진다. 배열 A에 들어있는 수는 100보다 작거나 같은 자연수이다. www.acmicpc.net 풀이 0) 준비물 해당 숫자가 몇개가 있는지 저장할 클래스 Num을 생성. 우선순위는 갯수의 오름차순 > 숫자의 오름차순 행과 열을 담을 Num 배열 리스트 rows[], cols[] 입력 받은 A배열을 담을 map[][] 행을 기반으로 정렬하는 sortByRow() 함수와 열을 기반으로 정렬하는 sortByCol() 함수를 생성한다. 1) 100 초가 지나도 답이 안나오면 -1을 출..

www.acmicpc.net/problem/1967 1967번: 트리의 지름 파일의 첫 번째 줄은 노드의 개수 n(1 ≤ n ≤ 10,000)이다. 둘째 줄부터 n-1개의 줄에 각 간선에 대한 정보가 들어온다. 간선에 대한 정보는 세 개의 정수로 이루어져 있다. 첫 번째 정수는 간선이 연 www.acmicpc.net 풀이 1) 루트 노드에서 dfs를 돌아서 최대 거리인 노드를 찾음 2) 1에서 찾은 노드에서 dfs를 돌아서 최대 거리인 노드까지의 value 값을 더함 3) 출력 주의사항 1) x package com.baekJoon; import java.io.BufferedReader; import java.io.IOException; import java.io.InputStreamReader; imp..

www.acmicpc.net/problem/1715 1715번: 카드 정렬하기 정렬된 두 묶음의 숫자 카드가 있다고 하자. 각 묶음의 카드의 수를 A, B라 하면 보통 두 묶음을 합쳐서 하나로 만드는 데에는 A+B 번의 비교를 해야 한다. 이를테면, 20장의 숫자 카드 묶음과 30장 www.acmicpc.net 풀이 1) 카드 묶음을 PriorityQueue에 담는다. 2) 카드 묶음이 1개 이면 0을 출력한다. 3) 카드 묶음이 2개 이상이면 무한루프 ㄱㄱ pq에서 2개를 뽑아 sum에 더한다. pq가 비었으면 루프를 탈출한다. pq가 안 비었으면 pq에 앞서 뽑은 2개를 더한 값을 pq에 넣는다 주의사항 1) 카드묶음이 1개면 0을 출력한다. (카드묶음을 출력하는 것이 아니다.) package com..

www.acmicpc.net/problem/1707 1707번: 이분 그래프 입력은 여러 개의 테스트 케이스로 구성되어 있는데, 첫째 줄에 테스트 케이스의 개수 K(2≤K≤5)가 주어진다. 각 테스트 케이스의 첫째 줄에는 그래프의 정점의 개수 V(1≤V≤20,000)와 간선의 개수 www.acmicpc.net 풀이 1) 간선의 정보를 담을 리스트 배열 list[], 정점이 속한 팀을 나타낼 배열 team[] 을 생성한다. 2) 리스트에 양방향으로 간선의 정보를 담는다. 3) Node 클래스를 만든다. 멤버는 정점의 번호와 팀. 4) i = 1부터 V까지 team[]이 0이라면 bfs를 돌릴것이다. (0 : 아직 팀이 정해져 있지 않은 점) team[i] 를 1로 설정한 후 큐에 담는다 (queue.off..

www.acmicpc.net/problem/16197 16197번: 두 동전 N×M 크기의 보드와 4개의 버튼으로 이루어진 게임이 있다. 보드는 1×1크기의 정사각형 칸으로 나누어져 있고, 각각의 칸은 비어있거나, 벽이다. 두 개의 빈 칸에는 동전이 하나씩 놓여져 있고, www.acmicpc.net 풀이 1) 맵을 만들때 동전의 좌표를 저장해 둔다. 2) dfs를 돌린다. 파라미터는 동전1의 좌표 (r1,c1) , 동전2의 좌표 (r2,c2) , depth 2-1) 탈출조건1 : depth가 10보다 클때 return 2-2) 탈출조건2 : 두 개의 동전이 동시에 밖으로 나갔을 때 return 2-3) 탈출조건3 : 한 개의 동전만 나갔을 경우. min을 갱신 한 후 return; 3) 재귀 부분 3-1..
- Total
- Today
- Yesterday
- 자바
- 문자열
- 그리디
- map
- Spring Boot
- 알고리즘
- G5
- BFS
- DFS
- g4
- 리액트 네이티브
- react native
- 코딩새내기
- PriorityQueue
- java
- 백트래킹
- 백준
- 구현
- S2
- 현꾸라지
- laugh4mile
- 시뮬레이션
- 다익스트라
- 리액트
- 객체지향
- 우선순위큐
- react
- S3
- Spring
- 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 |