smooth waters run deep

java 92

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

Level1_비밀지도 (JAVA)

코딩테스트 연습 - [1차] 비밀지도 비밀지도 네오는 평소 프로도가 비상금을 숨겨놓는 장소를 알려줄 비밀지도를 손에 넣었다. 그런데 이 비밀지도는 숫자로 암호화되어 있어 위치를 확인하기 위해서는 암호를 해독해야 한다. 다 programmers.co.kr ① 이진수 변환 메소드 이용 class Solution { public String[] solution(int n, int[] arr1, int[] arr2) { String[] answer = new String[n]; for(int i=0; i

1d-1c/Programmers 2020.12.11

십진수 -> 이진수 변환

① 메소드로 구현하기 십진수 9를 이진수로 바꾸는 과정은 아래의 그림과 같다. 바꾸고자하는 십진수 값을 2로 나누어, 몫이 1이 될때까지 모든 나머지값을 거꾸로 출력한다. 이 과정을 그대로 코드로 구현하면 다음과 같다. /* n : 비트 자리 수 (예: 9=1001(2)일때, 비트 자리 수 n=5 : 01001(2)) num : 십진수 */ public static int[] makeBinary(int n, int num){ int[] result = new int[n]; int i = n-1; while(num != 1){ result[i--] = num%2; num /= 2; } result[i] = num; //가장 마지막 num/2값 return result; } ② Integer.toBinary..

공부내용/JAVA 2020.12.11

Level1_실패율 (C++) (JAVA)

코딩테스트 연습 - 실패율 실패율 슈퍼 게임 개발자 오렐리는 큰 고민에 빠졌다. 그녀가 만든 프랜즈 오천성이 대성공을 거뒀지만, 요즘 신규 사용자의 수가 급감한 것이다. 원인은 신규 사용자와 기존 사용자 사이에 스 programmers.co.kr [C++] #include #include #include //pair, count, sort using namespace std; bool compare(const pair &a, const pair &b){ if (a.first > b.first) return true; // >내림차순 else if (a.first == b.first) return a.second < b.second; //

1d-1c/Programmers 2020.12.09