| 일 | 월 | 화 | 수 | 목 | 금 | 토 |
|---|---|---|---|---|---|---|
| 1 | 2 | 3 | 4 | 5 | 6 | |
| 7 | 8 | 9 | 10 | 11 | 12 | 13 |
| 14 | 15 | 16 | 17 | 18 | 19 | 20 |
| 21 | 22 | 23 | 24 | 25 | 26 | 27 |
| 28 | 29 | 30 | 31 |
- Math.floor()
- Algorithm
- 백준 18290
- java
- 백준 4375
- mysql
- 자바
- Codility
- sort
- 백준 16927
- 코딩테스트
- 알고리즘
- 백준 11723
- Math.ceil()
- 프로그래머스 도둑질 java
- 프로그래머스 숫자의 표현 java
- 네트워크
- 백준 14391
- 백준 15661
- java 반올림
- time complexity
- 백준 16935
- Arrays
- 0으로 채우기
- java 올림
- 프로그래머스 네트워크 java
- java 내림
- 프로그래머스 연속된 수의 합 java
- 백준 17425
- 프로그래머스 옹알이 java
- Today
- Total
목록Algorithm (94)
취미처럼
https://www.acmicpc.net/problem/15654 15654번: N과 M (5) N개의 자연수와 자연수 M이 주어졌을 때, 아래 조건을 만족하는 길이가 M인 수열을 모두 구하는 프로그램을 작성하시오. N개의 자연수는 모두 다른 수이다. N개의 자연수 중에서 M개를 고른 수열 www.acmicpc.net 자기자신은 방문 처리하고, 미리 저장한 arr 에서 해당 인덱스의 값을 ans 배열에 저장하여 출력 import java.util.*; import java.io.*; public class Main { public static int N, M; public static int[] ans; public static int[] arr; public static boolean[] visit;..
https://www.acmicpc.net/problem/15652 15652번: N과 M (4) 한 줄에 하나씩 문제의 조건을 만족하는 수열을 출력한다. 중복되는 수열을 여러 번 출력하면 안되며, 각 수열은 공백으로 구분해서 출력해야 한다. 수열은 사전 순으로 증가하는 순서로 출력해 www.acmicpc.net start를 i와 맞춘다. import java.util.*; import java.io.*; public class Main { public static int N, M; public static int[] arr; public static boolean[] visit; public static StringBuffer sb = new StringBuffer(); public static voi..
https://www.acmicpc.net/problem/15651 15651번: N과 M (3) 한 줄에 하나씩 문제의 조건을 만족하는 수열을 출력한다. 중복되는 수열을 여러 번 출력하면 안되며, 각 수열은 공백으로 구분해서 출력해야 한다. 수열은 사전 순으로 증가하는 순서로 출력해 www.acmicpc.net 시간초과에 유의 import java.util.*; import java.io.*; public class Main { public static int N, M; public static int[] arr; public static boolean[] visit; public static StringBuffer sb = new StringBuffer(); public static void main..
https://www.acmicpc.net/problem/15650 15650번: N과 M (2) 한 줄에 하나씩 문제의 조건을 만족하는 수열을 출력한다. 중복되는 수열을 여러 번 출력하면 안되며, 각 수열은 공백으로 구분해서 출력해야 한다. 수열은 사전 순으로 증가하는 순서로 출력해 www.acmicpc.net 중복을 방지하기 위해 start 변수를 두어 탐색 노드를 증가시킨다. import java.util.*; public class Main { public static int N, M; public static int[] arr; public static boolean[] visit; public static void main(String[] args) { Scanner sc = new Scann..
https://www.acmicpc.net/problem/15649 15649번: N과 M (1) 한 줄에 하나씩 문제의 조건을 만족하는 수열을 출력한다. 중복되는 수열을 여러 번 출력하면 안되며, 각 수열은 공백으로 구분해서 출력해야 한다. 수열은 사전 순으로 증가하는 순서로 출력해 www.acmicpc.net 최초 depth 자기 자신의 index는 visit = true 로 패스 i = 0 arr[0] = 1 i = 0 pass i = 1 arr[1] = 2 i = 2 arr[1] = 3 i = 3 arr[1] = 4 i = 1 arr[0] = 2 i = 0 arr[1] = 1 i = 1 pass i = 2 arr[1] = 3 i = 3 arr[1] = 4 i = 2 arr[0] = 3 i = 0 ..
https://www.acmicpc.net/problem/9095 9095번: 1, 2, 3 더하기 각 테스트 케이스마다, n을 1, 2, 3의 합으로 나타내는 방법의 수를 출력한다. www.acmicpc.net 정수 n 경우의 수dp 예시 1 dp[1]=1 [1] 2 dp[2]=2 [1+1], [2] 3 dp[3]=4 [1+1+1], [1+2], [2+1], [3] 4 dp[4]=7 [1+1+1+1],[1+1+2],[1+2+1],[1+3] [2+1+1],[2+2] [3+1] 5 dp[5]=13 [1+1+1+1+1],[1+1+1+2],[1+1+2+1],[1+1+3],[1+2+1+1],[1+2+2],[1+3+1] [2+1+1+1], [2+1+2], [2+2+1], [2+3] [3+1+1], [3+2] 정수..
https://www.acmicpc.net/problem/1748 1748번: 수 이어 쓰기 1 첫째 줄에 N(1 ≤ N ≤ 100,000,000)이 주어진다. www.acmicpc.net 자릿수가 바뀌는 기준 확인 1 ~ 9 : 1자리 10 ~ 99 : 2자리 100 ~ 999 : 3자리 1000 ~ 9999 : 4자리 i를 10, 100, 1000, ...으로 나눴을 때 나머지가 0이면 더해야 하는 자릿수를 올려준다. import java.util.*; public class Main { public static void main(String[] args) { Scanner sc = new Scanner(System.in); int ans = 0; int count = 1; // 더해야 하는 자릿수 ..
https://www.acmicpc.net/problem/6064 6064번: 카잉 달력 입력 데이터는 표준 입력을 사용한다. 입력은 T개의 테스트 데이터로 구성된다. 입력의 첫 번째 줄에는 입력 데이터의 수를 나타내는 정수 T가 주어진다. 각 테스트 데이터는 한 줄로 구성된다. www.acmicpc.net 기준 : M = 10, N = 12 일때 year = 13 최대 범위는 M과 N의 최소공배수 이를 초과하면 유효하지 않음(-1 출력) x 를 먼저 맞추고, y를 따라가게 계산 y는 M만큼 증가하고 N으로 나머지 연산을 하면 y값이 맞춰지게 됨 import java.util.*; public class Main { public static void main(String[] args) { Scanner ..
https://www.acmicpc.net/problem/14500 14500번: 테트로미노 폴리오미노란 크기가 1×1인 정사각형을 여러 개 이어서 붙인 도형이며, 다음과 같은 조건을 만족해야 한다. 정사각형은 서로 겹치면 안 된다. 도형은 모두 연결되어 있어야 한다. 정사각형의 변 www.acmicpc.net import java.util.*; public class Main { static int N, M; static int[][] map; static int[] dy = {-1, 1, 0, 0}; static int[] dx = {0, 0, -1, 1}; static boolean[][] visit; static int max = Integer.MIN_VALUE; public static void..
https://www.acmicpc.net/problem/1107 1107번: 리모컨 첫째 줄에 수빈이가 이동하려고 하는 채널 N (0 ≤ N ≤ 500,000)이 주어진다. 둘째 줄에는 고장난 버튼의 개수 M (0 ≤ M ≤ 10)이 주어진다. 고장난 버튼이 있는 경우에는 셋째 줄에는 고장난 버튼 www.acmicpc.net 0 부터 최대값까지 모든 번호를 다 누르고, +, - 이동 후에 최소값 선택 최대 채널은 500000이나 위에서부터 이동하는 경우도 있으므로 999999 가 최대값 import java.util.*; public class Main { public static void main(String[] args) throws Exception { ArrayList brokenNumbers ..