본문 바로가기

CS/Algorithm90

[알고리즘][DFS][2583] 영역구하기 [알고리즘][DFS][2583] 영역구하기 https://www.acmicpc.net/problem/2583 [풀이]값 m, n, k를 입력받는다.k만큼 색칠된 영역의 좌표를 받아 -1로 바꾼다.paper배열의 0인 부분을 찾아 DFS로 주변 부분을 탐색한다. [코드]123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869package algorithm_DFS; import java.util.Arrays;import java.util.Scanner; public class q_2583 { static int paper[][]; st.. 2018. 4. 9.
[알고리즘][문자열][1475] 방번호 [알고리즘][문자열][1475] 방번호 https://www.acmicpc.net/problem/1475 [풀이]입력을 받은 뒤 숫자로 변환해주고 몇 번씩 쓰였는지 counting한다.6과 9의 값을 합쳐서 나누기를 이용한 계산을 한다. (주석참고)for문으로 전체에서 가장 큰 값을 고른 뒤 출력 [코드]1234567891011121314151617181920212223242526272829303132333435363738394041424344package algorithm_String; import java.util.Scanner; public class q_1475 { public static void main(String[] args) { Scanner scan = new Scanner(System.. 2018. 4. 8.
[알고리즘][DFS][1012] 유기농배추 [알고리즘][DFS][1012] 유기농배추 https://www.acmicpc.net/problem/1012 [풀이]배추밭을 배열로 만든 뒤 배추의 위치를 1로 만들어준다.[TIP] Arrays.fill(array이름, 넣을 value) 를 이용하면 쉽게 초기화 할 수 있다.1의 값을 갖고있는 필드를 찾고 count 값을 올려준다. 그 다음, 필드 주변을 상하좌우 DFS(재귀)로 탐색해준다. [코드]123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960package algorithm_DFS; import java.util.Arrays;import java.uti.. 2018. 4. 6.
[알고리즘][문자열처리] 1157 단어공부 [알고리즘][문자열처리] 1157 단어공부 https://www.acmicpc.net/problem/1157 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748package algorithm_basic; import java.util.Scanner; public class q_1157 { public static void main(String[] args) { Scanner scan = new Scanner(System.in); char[] line = scan.nextLine().toCharArray(); int[] alphabat = new int['Z'-'A'+2]; for(int i=0;i 2018. 4. 5.