알고리즘
-
정렬 > K번째수프로그래머스(Programmers) 2018. 9. 20. 16:58
https://programmers.co.kr/learn/courses/30/lessons/42748 1. 문제 배열 array의 i번째 숫자부터 j번째 숫자까지 자르고 정렬했을 때, k번째에 있는 수를 구하려 합니다. 예를 들어 array가 [1, 5, 2, 6, 3, 7, 4], i = 2, j = 5, k = 3이라면 array의 2번째부터 5번째까지 자르면 [5, 2, 6, 3]입니다.1에서 나온 배열을 정렬하면 [2, 3, 5, 6]입니다.2에서 나온 배열의 3번째 숫자는 5입니다.배열 array, [i, j, k]를 원소로 가진 2차원 배열 commands가 매개변수로 주어질 때, commands의 모든 원소에 대해 앞서 설명한 연산을 적용했을 때 나온 결과를 배열에 담아 return 하도록 ..
-
2017 팁스타운 > 예상 대진표프로그래머스(Programmers) 2018. 9. 20. 15:56
https://programmers.co.kr/learn/courses/30/lessons/12985 1. 문제 △△ 게임대회가 개최되었습니다. 이 대회는 N명이 참가하고, 토너먼트 형식으로 진행됩니다. N명의 참가자는 각각 1부터 N번을 차례대로 배정받습니다. 그리고, 1번↔2번, 3번↔4번, ... , N-1번↔N번의 참가자끼리 게임을 진행합니다. 각 게임에서 이긴 사람은 다음 라운드에 진출할 수 있습니다. 이때, 다음 라운드에 진출할 참가자의 번호는 다시 1번부터 N/2번을 차례대로 배정받습니다. 만약 1번↔2번 끼리 겨루는 게임에서 2번이 승리했다면 다음 라운드에서 1번을 부여받고, 3번↔4번에서 겨루는 게임에서 3번이 승리했다면 다음 라운드에서 2번을 부여받게 됩니다. 게임은 최종 한 명이 남을..
-
프로그래머스 > Level 1 > 같은 숫자는 싫어프로그래머스(Programmers) 2018. 9. 14. 19:45
https://programmers.co.kr/learn/courses/30/lessons/12906 1. 문제 2. 알고리즘키워드 - 구현 2018-09-14 unique 사용 코드 추가 3. 코드 123456789101112131415161718192021#include #include using namespace std; vector solution(vector arr) { vector answer; answer.push_back(arr[0]); const int size = arr.size(); for(int i =1; i 정렬 하면 1133011 1,3,0,1 이 나오는게 아니라 // 0111133 -> 013 으로 나와 문제와 다른 결과가 나옴으로 주의 해야 한다. // arr에서 연속 중복 ..
-
Level 2 > 다음 큰 숫자프로그래머스(Programmers) 2018. 9. 14. 19:17
https://programmers.co.kr/learn/courses/30/lessons/12911 1. 문제입력 받은 숫자를 이진수로 변환하여 갖고 있는 1의 개수와 다음 숫자를 이 진수로 변환 했을 때 1의 개수가 같은 숫자를 찾는 문제 현재 숫자 - 78(1001110) == 1 의 개수 4 개다음 큰 숫자 - 83(1010011) == 1 의 개수 4개 2. 알고리즘키워드 - 구현 3. 코드 123456789101112131415161718192021#include #include using namespace std; int solution(int n) { int count = __builtin_popcount(n); // 현재 정수의 비트 카운트를 계산 한다. while(true) { // 반..
-
백준 3474번: 교수가 된 현우정수론(Number theory) 2018. 9. 14. 18:59
https://www.acmicpc.net/problem/3474 1. 문제0 의 개수를 찾는 문제 2. 알고리즘키워드 - 정수론 문제가 이해가 안되서 인터넷에 있는 해답 보면서 풀었다. 2, 5 로 체크하면 되는 문제라고 하는데 흠?2,5 나누어서 떨어지면 0 이기 때문에 체크하나 3. 코드 12345678910111213141516171819202122232425262728293031323334353637383940414243444546#include #include #include #include #include #include #include #include #include #include #include #include #include #include using namespace std; #de..
-
백준 4690번: 완전 세제곱구현(Implementation) 2018. 9. 14. 18:53
https://www.acmicpc.net/problem/4690 1. 문제 2. 알고리즘키워드 - 구현 3. 코드 12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849#include #include #include #include #include #include #include #include #include #include #include #include #include #include using namespace std; #define MAX_SIZE 100#define INF 0x7fffffff#define CENDL "\n"#define ll long long #define c_revers..
-
해시 > 완주하지 못한 선수프로그래머스(Programmers) 2018. 9. 14. 13:13
https://programmers.co.kr/learn/courses/30/lessons/42576 1. 문제중복된 원소가 없는지 판단 하는 문제 2. 알고리즘키워드 - 해쉬, 정렬 3. 코드 1234567891011121314151617181920212223242526272829303132333435#include #include #include #include using namespace std; string solution(vector participant, vector completion) { string answer = ""; map mm; int size = participant.size(); for(int i=0; ifirst; break; } } return answer;}Colored ..
-
백준 10093 번: 숫자구현(Implementation) 2018. 9. 2. 18:07
https://www.acmicpc.net/problem/10093 1. 문제 2. 알고리즘키워드 - 구현 3. 코드 1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950#include #include #include #include #include #include #include #include #include #include #include #include #include #include using namespace std; #define MAX_SIZE 100#define INF 0x7fffffff#define CENDL "\n"#define ll long long #define c_rev..