목록답 (102)
삐까냥의 파도타기
문제 출처 : 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 ( ..
문제 출처 : 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..
문제 출처 : https://www.acmicpc.net/problem/1932 import java.util.Scanner; public class Main { public static void main(String[] args){ Scanner scanner = new Scanner(System.in);int input = scanner.nextInt();int[][] array = new int[input][input];int width = 2; //입력 값을 계산하면서 저장하기 array[0][0] = scanner.nextInt();for ( int i = 1; i < input; i++ ) {for (int j = 0; j < width; j++ ) {int temp = scanner.next..