본문 바로가기

백준26

[Java]백준 2675번 :: 문자열 반복 백준 온라인 저지 2675번 '문자열 반복' Java 알고리즘 문제풀이 풀이 이 문제 역시 문자열을 사용하는 함수를 연습한다는 점에 의미를 두는 문제이다. 정말 쉬운 문제다. import java.util.Scanner; public class java_2675 { public static void main(String[] args) { Scanner sc = new Scanner(System.in); int num = sc.nextInt(); for (int i = 0; i < num; i++) { int cnt = sc.nextInt(); String str = sc.nextLine(); String result = ""; for (int j = 0; j < str.length(); j++) { fo.. 2018. 12. 25.
[Java]백준 11654번 :: 아스키 코드 백준 온라인 저지 11654번 '아스키 코드' Java 알고리즘 문제풀이 풀이 이 문제에서는 문자열 관련 문제가 나오기 전에 Java가 제공하는 기본적인 함수를 사용해 본다는 것에 의미를 두고 연습하면 된다. import java.util.Scanner; public class java_11654 { public static void main(String[] args) { Scanner sc = new Scanner(System.in); int c = sc.next().charAt(0); System.out.println(c); sc.close(); } } 2018. 12. 25.
[Java]백준 8958번 :: OX퀴즈 백준 온라인 저지 1992번 'OX퀴즈' Java 알고리즘 문제풀이 풀이 정말 간단한 문제다. 오랜만에 알고리즘을 푸는데 어려운 문제를 풀려고 하니 의욕이 나질 않아서 백준 온라인 저지 사이트에 단계별 순서대로 푸는데 1차원 배열사용하기 부분에 있는 문제이다. 먼저 String에 사용자의 입력을 받는다. 그 이후에는 한 글자씩 받는다 이때 문자가 O와 같다면 count값을 증가시킨다. 연속하는 경우도 처리해야하니 count값을 사용한다. 연속되지 않는다면 count값을 0으로 초기화 시킨다. import java.util.Scanner; public class java_8958 { public static void main(String[] args) { Scanner sc = new Scanner(Sys.. 2018. 12. 25.
[Java]백준 1780번 :: 종이의 개수 백준 온라인 저지 1780번 '종이의 개수' Java 알고리즘 문제풀이 풀이 이 문제는 분할정복(Divide and Conquer)로 풀면된다. 분할정복은 정말 쉬운 개념이다. (유사한 분할정복 문제 풀기 -> 백준 1992번 쿼드트리 https://developer-mac.tistory.com/37) 단순하게 복잡한 문제를 해결할 수 있는 작은단위로 나누어서 처리한 후 이것을 합치면 된다. 이 문제에서 3등분을 한다고 생각하면 된다. 먼저 입력을 받고 divide 함수에서 재귀적으로 동작한 후 if 문을 두어 모든 원소가 0이거나 1일때 빠져나오게 하면 된다. import java.io.BufferedReader; import java.io.IOException; import java.io.InputS.. 2018. 10. 28.
[Java]백준 1992번 :: 쿼드트리 백준 온라인 저지 1992번 '쿼드트리' Java 알고리즘 문제풀이 풀이 이 문제는 분할정복(Divide and Conquer)로 풀면된다. 분할정복 사실은 정말 쉬운 개념이다. 복잡한 문제를 해결할 수 있는 작은 단위로 나누어 처리하고 이것을 합치면 된다. 이 문제를 풀면 백준 1780번 문제 종이의 개수도 아주 쉽게 풀 수 있을 것이다. (유사한 문제 풀기 -> 백준 1780번 문제종이 https://developer-mac.tistory.com/38) 그리고 쿼드트리는 단순히 노드가 4개 있는 것이라고 생각하면 된다. 즉, 4개로 쪼개서 4개의 노드가 생겨난다고 생각하면 된다. 먼저 입력을 받은 후 divide 함수에서 재귀적으로 동작하고 if 문을 두어 모든 원소가 0이거나 1일때 빠져나오게 하면.. 2018. 10. 28.
[Java]백준 4344번 :: 평균은 넘겠지 문제 대학생 새내기들의 90%는 자신이 반에서 평균을 넘는다고 생각한다. 이걸 깨야한다. 테스트 케이스 개수를 입력받고 둘째줄 부터는 학생들의 점수가 입력된다. 입력 첫째 줄에는 테스트케이스의 개수 C가 주어진다. 둘째 줄부터 각 테스트케이스마다 학생의 수 N(1 ≤ N ≤ 1000, N은 정수)이 첫 수로 주어지고, 이어서 N명의 점수가 주어진다. 점수는 0보다 크거나 같고, 100보다 작거나 같은 정수이다. 문제풀이 * Java 언어로 구현했습니다. 간단한 문제에 속한다. 이번에도 Time out문제로 Scanner가 아닌 BufferedReader, BufferedWriter를 이용해서 입력값을 받는다. 사용자가 입력한 테스트 케이스는 trim()을 이용해 n값을 받고, 두번째 줄부터 입력한 학생들.. 2018. 7. 5.