algorithm

· Dev/PS
문제 n가지 종류의 동전이 있다. 각각의 동전이 나타내는 가치는 다르다. 이 동전을 적당히 사용해서, 그 가치의 합이 k원이 되도록 하고 싶다. 그 경우의 수를 구하시오. 각각의 동전은 몇 개라도 사용할 수 있다. 사용한 동전의 구성이 같은데, 순서만 다른 것은 같은 경우이다. 입력 첫째 줄에 n, k가 주어진다. (1 ≤ n ≤ 100, 1 ≤ k ≤ 10,000) 다음 n개의 줄에는 각각의 동전의 가치가 주어진다. 동전의 가치는 100,000보다 작거나 같은 자연수이다. 출력 첫째 줄에 경우의 수를 출력한다. 경우의 수는 231보다 작다. 풀이 더보기 package footdev._5주차; import java.io.*; import java.util.*; public class BOJ_동전_1 { ..
· Dev/PS
문제 한국이 낳은 세계적인 락스타 락동호는 2007년 2월 1일 역대 최대 규모의 콘서트를 열었으며, 2007년 2월 11일에 자신의 음악세계를 세상에 알리고, 2007년 3월 4일에는 자신의 작곡 비법을 세계에 공개했다. 하지만, 그 후 락동호는 음악을 접고 체스에 입문하게 되었고, 그 결과 2007년 3월 31일 Heroes원정대에서는 체스 부분으로 참가하게 된다. 그 후 절대로 음악을 하지 않을 것 같았지만, 모두의 예상을 깨고, 2007년 4월 21일 월드 노래자랑으로 신이 내린 가창력으로 우승한 뒤 자취를 감추었다. 하지만 2008년 7월 13일 드디어 락동호가 컴백한다. 락동호는 지난 몇 달간 자신의 신보에 자신의 음악적 능력을 모두 담았고, 이제 몇몇 곡 중 최고의 곡만을 앨범에 담으려고 한..
· Dev/PS
문제 공학자 길동이는 외부의 침략으로부터 마을을 지킬 수 있는 부메랑 무기를 개발하는 공학자다. 길동이는 부메랑 제작을 위한 고급 나무 재료를 구했다. 이 나무 재료는 NxM크기의 직사각형 형태이며 나무 재료의 부위마다 그 강도가 조금씩 다르다. 예를 들어 나무 재료의 크기가 2x3일 때는 다음과 같이 총 6칸으로 구성된다. 길동이는 이처럼 넓은 사각형 형태의 나무 재료를 잘라서 여러 개의 부메랑을 만들고자 한다. 그리고 부메랑은 항상 3칸을 차지하는 ‘ㄱ’모양으로 만들어야 한다. 따라서 부메랑의 가능한 모양은 다음과 같이 총 4가지다. 이때 부메랑의 중심이 되는 칸은 강도의 영향을 2배로 받는다. 위 그림에서 노란색으로 칠한 부분이 ‘중심이 되는 칸’이다. 예를 들어 앞선 예시에서는 다음과 같이 2개의..
· Dev/PS
문제 한수는 크기가 2N × 2N인 2차원 배열을 Z모양으로 탐색하려고 한다. 예를 들어, 2×2배열을 왼쪽 위칸, 오른쪽 위칸, 왼쪽 아래칸, 오른쪽 아래칸 순서대로 방문하면 Z모양이다. N > 1인 경우, 배열을 크기가 2N-1 × 2N-1로 4등분 한 후에 재귀적으로 순서대로 방문한다. 다음 예는 22 × 22 크기의 배열을 방문한 순서이다. N이 주어졌을 때, r행 c열을 몇 번째로 방문하는지 출력하는 프로그램을 작성하시오. 다음은 N=3일 때의 예이다. 입력 첫째 줄에 정수 N, r, c가 주어진다. 출력 r행 c열을 몇 번째로 방문했는지 출력한다. 제한 1 ≤ N ≤ 15 0 ≤ r, c < 2N 풀이 더보기 package baekjoon; import java.io.*; import java..
· Dev/PS
import java.io.*; import java.util.*; public class DivisionSquare { static BufferedReader br; static StringTokenizer st; static int N, M; static int[][] arr; static long[][] sum; static long ans = -1; public static void main(String[] args) throws IOException{ input(); solve(); System.out.println(ans); } public static void input() throws IOException { br = new BufferedReader(new InputStreamReader..
· Dev/PS
import java.io.*; import java.util.StringTokenizer; public class RemoteController { static BufferedReader br; static StringTokenizer st; static String N; static int cnt; static String[] buttons; static int ans = 0; public static void main(String[] args) throws IOException{ input(); solve(); System.out.println(ans); } public static void input() throws IOException { br = new BufferedReader(new Inp..
· Dev/PS
import java.io.*; import java.io.InputStreamReader; import java.util.StringTokenizer; public class Main { static int N; static int ans = 0; static StringTokenizer st; public static void recur(int[] A, int depth, int n) { //종료조건 if(depth == N) { ans = Math.max(ans, calculate(A, n)); return; } //재귀호출 for(int i = depth; i < N; i++) { swap(A, i ,depth); recur(A, depth+1, n); swap(A, i, depth); } } p..
· Dev/PS
import java.io.*; import java.util.*; public class Main { static int N; static int S; static int ans = 0; static int[] arr; static StringTokenizer st; public static void backtracking(int idx, int sum) { if(idx == N) { if(sum == S) { ans++; } return; } backtracking(idx+1, sum); backtracking(idx+1, sum+arr[idx]); } public static void main(String[] args) throws IOException{ BufferedReader br = new ..
· Dev/PS
import java.io.BufferedReader; import java.io.IOException; import java.io.InputStreamReader; import java.util.ArrayList; import java.util.Stack; import java.util.StringTokenizer; public class Main { static int N; static int M; static int[][] map; static ArrayList chickenMap; static ArrayList houseMap; static Stack selectedChicken; static int minDist; public static void dfs(int start, int cnt) { ..
· Dev/PS
import java.io.BufferedReader; import java.io.InputStreamReader; import java.io.*; import java.util.StringTokenizer; import java.util.Arrays; public class Main{ static int A, M; static int[] Anums, Mnums; public static boolean binarySearch(int start, int end, int num) { while(start Anums[mid]) { start = mid + 1; } } return false; } public static void main(String[] args) throws IOException { Buff..
풋데브
'algorithm' 태그의 글 목록