smooth waters run deep

1d-1c/Programmers 18

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

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 import java.util.List; import java.util.ArrayList; class Solution { public int solution(String dartResult) { int[] cal = new int[3]; //3번의 기록 점수 저장 배열 int idx = 0; //cal[] 인덱스 for(int i=0; i='0' && dartResult.charAt(i) i++ } } //S,D,T 판별 if(dartResult.charAt(i)=='S'){ cal[idx] = (int)Math.pow(cal[idx],1); idx++; //*#은 옵션이므로 일단 cal[] 인덱스++ continue; } else ..

1d-1c/Programmers 2020.12.11

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

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

Level2_카카오프렌즈 컬러링북 (JAVA)

코딩테스트 연습 - 카카오프렌즈 컬러링북 6 4 [[1, 1, 1, 0], [1, 2, 2, 0], [1, 0, 0, 1], [0, 0, 0, 1], [0, 0, 0, 3], [0, 0, 0, 3]] [4, 5] programmers.co.kr import java.util.LinkedList; import java.util.Queue; class Solution { static int[] dx = {-1, 1, 0, 0}; static int[] dy = {0, 0, -1, 1}; static boolean[][] visited; static int numberOfArea = 0; //영역 수 static int maxSizeOfOneArea = 0; //가장 큰 영역의 넓이 static int cnt..

1d-1c/Programmers 2020.11.05

Level2_기능개발 (C++) (JAVA)

코딩테스트 연습 - 기능개발 프로그래머스 팀에서는 기능 개선 작업을 수행 중입니다. 각 기능은 진도가 100%일 때 서비스에 반영할 수 있습니다. 또, 각 기능의 개발속도는 모두 다르기 때문에 뒤에 있는 기능이 앞에 있는 programmers.co.kr [C++] : 큐로 구현 #include #include using namespace std; vector solution(vector progresses, vector speeds) { queue days; //걸리는 시간 저장 vector answer; int max_day; int cnt = 1; //answer에 넣을 값 bool flag = false; //answer에 넣었는지 확인하기 위한 flag if (progresses.size() > ..

1d-1c/Programmers 2020.11.05