목록코딩 (103)
삐까냥의 파도타기
문제 출처 : https://www.acmicpc.net/problem/10610 주의할점 : 입력된 숫자를 모두 사용해야 된다는 것. 이것만 주의하면 너무나 쉬운 문제입니다. import java.util.Scanner; public class Q10610 {public static void main(String[] args) {Scanner sc = new Scanner(System.in);String number = sc.next();int[] nums = new int[10];int sum = 0;for ( int i = 0; i < number.length(); i++ ) {int temp = number.charAt(i)-48;nums[temp] += 1;sum += temp;}if ( num..
문제 출처 : https://www.acmicpc.net/problem/2217 import java.util.ArrayList;import java.util.Arrays;import java.util.Collections;import java.util.Scanner; public class Q2217 { public static void main(String[] args) {Scanner sc = new Scanner(System.in);int num = sc.nextInt();int[] lopeList = new int[num];for ( int i = 0; i < num; i++ ) {lopeList[i] = sc.nextInt();}Arrays.sort(lopeList);int result = l..
문제출처 : https://www.acmicpc.net/problem/11047 문제준규가 가지고 있는 동전은 총 N종류이고, 각각의 동전을 매우 많이 가지고 있다.동전을 적절히 사용해서 그 가치의 합을 K로 만드려고 한다. 이 때 필요한 동전 개수의 최소값을 구하는 프로그램을 작성하시오.입력첫째 줄에 N과 K가 주어진다. (1 ≤ N ≤ 10, 1 ≤ K ≤ 100,000,000)둘째 줄부터 N개의 줄에 동전의 가치 Ai가 오름차순으로 주어진다. (1 ≤ Ai ≤ 1,000,000, A1 = 1, i ≥ 2인 경우에 Ai는 Ai-1의 배수)출력첫째 줄에 K원을 만드는데 필요한 동전 개수의 최소값을 출력한다.예제 입력 복사10 4200 1 5 10 50 100 500 1000 5000 10000 5000..
문제 출처 : https://www.acmicpc.net/problem/11399 import java.util.ArrayList;import java.util.Collections;import java.util.Scanner; public class Main {public static void main(String[] args) {Scanner scanner = new Scanner(System.in);int num = scanner.nextInt();ArrayList number = new ArrayList();for ( int i = 0; i < num; i++ ) {number.add(scanner.nextInt());}Collections.sort(number);int sum = 0;for ( ..
방금 막 2차 테스트를 마쳤습니다. 2017년 10월 14일 오후 2시 ~ 오후 10시 8시간 동안 진행한 테스트입니다. ㄷㄷㄷㄷㄷㄷㄷㄷㄷㄷ 사실 1차 코딩 테스트의 미친 난이도를 경험하고 2차 코딩 테스트를 8시간동안 진행한다는 안내메일을 봤을 때 엄청 쫄렸습니다. 근데 체감 난이도는 1차 코딩 테스트 보다 쉬웠습니다. 왜냐하면 함정이 전혀 없었고 베베 꼬는 알고리즘을 생각할 필요가 없었기 때문입니다. 그냥 주어진 문제대로만 풀기만 하면 되기 때문에 넘나 편안한 맘으로 임했습니다.(문제를 풀면 해당 해당 점수가 출력 되는데, 정말로 문제를 잘만 풀면 되는 테스트입니다.) 근데 시간이 지나면 지날수록 시간이 촉박해지더라구요. 채점 결과 점수를 알아야 해당 코드를 수정하고 다시 테스트를 진행할텐데 약 오후..
문제 출처 : https://www.acmicpc.net/problem/11053 import java.util.Scanner; public class Q11053 {public static void main(String[] args) {Scanner scanner = new Scanner(System.in);int input = scanner.nextInt();int[][] array = new int[input][2];//0번째 -> input 값, 1번째 -> 증가 부분 수열의 길for ( int i = 0; i = 0;..
문제 출처 : https://www.acmicpc.net/problem/10844 import java.util.Scanner; public class Q10844 {public static void main(String[] args) {Scanner scanner = new Scanner(System.in);int input = scanner.nextInt();scanner.close();int[][] array = new int[input][10];int value = 1000000000;//첫번째 자리에는 0이 올수 없으니 1부터 9까지 한가지 방법for ( int i = 1; i < 10; i++ ) {array[0][i] = 1;}//입력한 n까지 계산하기for ( int i = 1; i < i..
문제 출처 : https://www.acmicpc.net/problem/1010 순열 조합으로 풀었습니다. import java.util.Scanner;public class Main{ public static void main(String[] args) {Scanner scanner = new Scanner(System.in);int input = scanner.nextInt();for ( int j = 0; j < input; j++ ) {int r = scanner.nextInt();int n = scanner.nextInt();long result = 1l;// n 컴비네이션 r (nCr) 계산if ( r != n ) {if ( n /2 < r ) {r = n - r;}for ( int i = 0..
문제 출처 : https://www.acmicpc.net/problem/1912 예제가 함정을 말해주지 않아서 까다로운 문제입니다. 함정을 파악할 수 있도록 예제를 수정하겠습니다."10 -4 5 7 9 7 -35 12 21 -1"를 입력하면 결과는 34가 나옵니다.10 + (-4) + 5 + 7 + 9 + 7 의 결과값 34가 12 + 21 의 결과값 33 보다 크기 때문입니다. 단순하게 숫자가 0보다 작을 경우에는 덧셈을 종료하는 것이 아니라,"sum(n-1) + n항"과 "n항"의 값을 비교하면 됩니다.배고파서 그런지 설명이 안되네요. 코드 보시죠. import java.util.Scanner;public class Q1912 {public static void main(String[] args) {..
문제 출처 : https://www.acmicpc.net/problem/11726 import java.util.Scanner; public class Main {public static void main(String[] args){Scanner scanner = new Scanner(System.in);int input = scanner.nextInt();calResult(input);} static void calResult(int value) {int temp1 = 1;int temp2 = 2;if ( value == 1 ) {System.out.println(temp1);} else if (value == 2 ) {System.out.println(temp2);} else {for (int i=3..