smooth waters run deep

1d-1c 105

1781_컵라면 (C++)

1781번: 컵라면 상욱 조교는 동호에게 N개의 문제를 주고서, 각각의 문제를 풀었을 때 컵라면을 몇 개 줄 것인지 제시 하였다. 하지만 동호의 찌를듯한 자신감에 소심한 상욱 조교는 각각의 문제에 대해 데드라 www.acmicpc.net #include #include #include #include using namespace std; struct Question{ int deadline; int cup; bool operator< (Question question) const{ //오름차순 if(deadline==question.deadline) return cup

1d-1c/BOJ 2021.06.24

Level1_두 개 뽑아서 더하기 (C++)

코딩테스트 연습 - 두 개 뽑아서 더하기 정수 배열 numbers가 주어집니다. numbers에서 서로 다른 인덱스에 있는 두 개의 수를 뽑아 더해서 만들 수 있는 모든 수를 배열에 오름차순으로 담아 return 하도록 solution 함수를 완성해주세요. 제한 programmers.co.kr #include #include #include using namespace std; vector solution(vector numbers) { vector answer; set s; for(int i=0; i

1d-1c/Programmers 2021.04.05

1149_RGB거리 (C++)

1149번: RGB거리 첫째 줄에 집의 수 N(2 ≤ N ≤ 1,000)이 주어진다. 둘째 줄부터 N개의 줄에는 각 집을 빨강, 초록, 파랑으로 칠하는 비용이 1번 집부터 한 줄에 하나씩 주어진다. 집을 칠하는 비용은 1,000보다 작거나 www.acmicpc.net #include #include //memset #include //min using namespace std; int n; int house[1001][3] = {0,}; int cal[1001][3] = {0,}; int main(){ cin >> n; for(int i=0; i house[i][j]; if(i==n-1){ cal[i][j] = house[i][j]; } } } for(int i=n-2; i>=0; i--){ cal[i]..

1d-1c/BOJ 2020.12.29

1260_DFS와 BFS (C++)

1260번: DFS와 BFS 첫째 줄에 정점의 개수 N(1 ≤ N ≤ 1,000), 간선의 개수 M(1 ≤ M ≤ 10,000), 탐색을 시작할 정점의 번호 V가 주어진다. 다음 M개의 줄에는 간선이 연결하는 두 정점의 번호가 주어진다. 어떤 두 정점 사 www.acmicpc.net #include #include //memset #include using namespace std; bool visited[1001] = {false}; int arr[1001][1001]; int n, m, startV; void dfs(int v){ cout startV; for(int i=0; i> v1 >> v2; arr[v1][v2] = arr[v2][v1] = 1; } dfs(startV); cout bool형(..

1d-1c/BOJ 2020.12.22

1932_정수 삼각형 (JAVA)

1932번: 정수 삼각형 첫째 줄에 삼각형의 크기 n(1 ≤ n ≤ 500)이 주어지고, 둘째 줄부터 n+1번째 줄까지 정수 삼각형이 주어진다. www.acmicpc.net ** DFS를 이용해 재귀로 풀면 - 시간 초과가 난다! (틀린 코드) import java.io.BufferedReader; import java.io.InputStreamReader; import java.util.StringTokenizer; public class Main { static int n; static int[][] map; static int ans = 0; public static void main(String[] args) throws Exception { BufferedReader br = new Buffer..

1d-1c/BOJ 2020.12.18

14889_스타트와 링크 (JAVA)

14889번: 스타트와 링크 예제 2의 경우에 (1, 3, 6), (2, 4, 5)로 팀을 나누면 되고, 예제 3의 경우에는 (1, 2, 4, 5), (3, 6, 7, 8)로 팀을 나누면 된다. www.acmicpc.net import java.io.BufferedReader; import java.io.InputStreamReader; import java.util.StringTokenizer; public class Main { static int num; static int[][] ability; //능력치 저장되어있는 배열 static boolean[] checkTeam; //방문 배열 -> true:스타트팀, false:링크팀으로 사용 static int ans = Integer.MAX_VALU..

1d-1c/BOJ 2020.12.15

Level1_2016년 (JAVA)

코딩테스트 연습 - 2016년 2016년 1월 1일은 금요일입니다. 2016년 a월 b일은 무슨 요일일까요? 두 수 a ,b를 입력받아 2016년 a월 b일이 무슨 요일인지 리턴하는 함수, solution을 완성하세요. 요일의 이름은 일요일부터 토요일까 programmers.co.kr 직접 구현 class Solution { public String solution(int a, int b) { int[] month = {31,29,31,30,31,30,31,31,30,31,30,31}; //1~12월 일수 String[] day = {"SUN","MON","TUE","WED","THU","FRI","SAT"}; int[] calendar = new int[366]; //2016년의 365일의 '요일' 저..

1d-1c/Programmers 2020.12.14

Level1_수박수박수박수박수박수? (JAVA)

코딩테스트 연습 - 수박수박수박수박수박수? 길이가 n이고, 수박수박수박수....와 같은 패턴을 유지하는 문자열을 리턴하는 함수, solution을 완성하세요. 예를들어 n이 4이면 수박수박을 리턴하고 3이라면 수박수를 리턴하면 됩니다. 제한 조 programmers.co.kr StringBuilder 이용 class Solution { public String solution(int n) { StringBuilder sb = new StringBuilder(); for(int i=0; i

1d-1c/Programmers 2020.12.14

Level1_문자열 내림차순으로 배치하기 (JAVA)

코딩테스트 연습 - 문자열 내림차순으로 배치하기 문자열 s에 나타나는 문자를 큰것부터 작은 순으로 정렬해 새로운 문자열을 리턴하는 함수, solution을 완성해주세요. s는 영문 대소문자로만 구성되어 있으며, 대문자는 소문자보다 작은 것으로 programmers.co.kr import java.util.Arrays; class Solution { public String solution(String s) { char[] strTochar = s.toCharArray(); Arrays.sort(strTochar); StringBuilder sb = new StringBuilder(new String(strTochar)); return sb.reverse().toString(); } } 1. String ..

1d-1c/Programmers 2020.12.13

Level1_정수 제곱근 판별 (JAVA)

코딩테스트 연습 - 정수 제곱근 판별 임의의 양의 정수 n에 대해, n이 어떤 양의 정수 x의 제곱인지 아닌지 판단하려 합니다. n이 양의 정수 x의 제곱이라면 x+1의 제곱을 리턴하고, n이 양의 정수 x의 제곱이 아니라면 -1을 리턴하는 함 programmers.co.kr class Solution { public long solution(long n) { double num = Math.sqrt(n); return num==(long)num ? (long)Math.pow(num+1,2) : -1; } } Math.sqrt() - 제곱근 구할 때 이용한다. 예: 루트25 = 5 = (int)Math.sqrt(25) - 리턴 값 : double 형 '정수' 인지 어떻게 확인할까? double num1 ..

1d-1c/Programmers 2020.12.13