본문 바로가기
728x90
반응형

코딩테스트33

c++(cpp) 프로그래머스 : 코딩테스트 - 완주하지 못한 선수 #include #include #include using namespace std; string solution(vector participant, vector completion) { string answer = ""; sort(participant.begin(), participant.end()); sort(completion.begin(), completion.end()); for(int i = 0; i < participant.size();i++) { if(participant[i] != completion[i]) { answer = participant[i]; return answer; } } return participant[participant.size()-1]; } 2023. 1. 23.
c++(cpp) 프로그래머스 - 코딩테스트 : k번째 수 #include #include #include using namespace std; vector solution(vector array, vector commands) { vector answer; for(int i = 0 ; i < commands.size() ; i++) { vector temp; for(int j = commands[i][0]-1 ; j < commands[i][1]; j ++) { temp.push_back(array[j]); } sort(temp.begin(), temp.end()); answer.push_back(temp[commands[i][2]-1]); } return answer; } 2023. 1. 23.
c++(cpp) 프로그래머스 - 코딩 테스트 : 두 정수 사이의 합 #include #include using namespace std; long long solution(int A, int B) { long long answer = 0; int a = A < B ? A : B; int b = A < B ? B : A; for (int i = a; i b) { for(int i = b ; i 2022. 8. 13.
c++(cpp) 프로그래머스 - 코딩 테스트 : 3진법 뒤집기 #include #include #include using namespace std; int solution(int n) { int answer = 0; vector v; while(n>0) { v.push_back(n%3); n/=3; } reverse(v.begin(), v.end()); int num = 1; for(int i = 0; i < v.size(); i++) { answer += v[i]*num; num *=3; } return answer; } 2022. 8. 11.
c++(cpp) 프로그래머스 - 코딩 테스트 : 문자열 내 p와 y의 개수 다른 사람들의 코드도 나랑 비슷한 것 같아서 업로드는 하지 않았다. 걍 y,Y와 p,P의 개수를 세고 비교하면 됨. #include #include using namespace std; bool solution(string s) { bool answer = true; int count_p = 0; int count_y = 0; for(int i = 0 ; i < s.size(); i++) { if(s[i] =='p' || s[i] == 'P') { count_p ++; } else if(s[i] == 'y' || s[i] == 'Y') { count_y ++; } } // [실행] 버튼을 누르면 출력 값을 볼 수 있습니다. if(count_p != count_y) { answer = false; } re.. 2022. 8. 11.
c++(cpp) 프로그래머스 - 코딩 테스트 : 문자열 내림차순으로 배치하기 나는 쉽게 algorithm include하고 역으로 sort하는 함수 사용했는데 #include #include #include using namespace std; string solution(string s) { string answer = ""; sort(s.begin(), s.end(), greater()); answer = s; return answer; } 아래 코드처럼 rbegin(), rend()를 사용할 수도 있다는 걸 몰랐다.. 새로 알아가는 중 #include #include #include using namespace std; string solution(string s) { string answer = ""; sort(s.rbegin(),s.rend()); return s; } 2022. 8. 11.
c++(cpp) 프로그래머스 - 코딩 테스트 : 문자열 다루기 기본 isdigit()함수를 써서 풀었다. #include #include using namespace std; bool solution(string s) { bool answer = true; for(int i = 0 ; i < s.size(); i++) { if((s.size() == 4 || s.size() == 6)&& isdigit(s[i])) { answer = true; } else { answer = false; break; } } return answer; } 다른 사람의 풀이로는 아래! #include #include using namespace std; bool solution(string s) { if (s.length() != 4 && s.length() != 6) return fals.. 2022. 8. 11.
c++(cpp) 프로그래머스 - 코딩테스트 : 예산 #include #include #include #include #include using namespace std; int solution(vector d, int budget) { int answer = 0; sort(d.begin(), d.end()); for(int i = 0 ; i < d.size(); i++) { if(budget-d[i] < 0) { break; } else { budget = budget - d[i]; answer++; } } return answer; } 2022. 8. 11.
c++(cpp) 프로그래머스 - 코딩테스트 : [1차]비밀지도 다른 사람들의 코드를 보니까 비트 연산자 이용해서 풀던데.. 그 방법을 애초에 생각하지 못해서 다른 방법으로 풀었다 #include #include #include using namespace std; vector solution(int n, vector arr1, vector arr2) { vector answer; string temp; for(int i = 0 ; i < n ; i++) { for(int j = 0 ; j < n ; j++) { if(arr1[i] % 2 == 0 && arr2[i] % 2 == 0) { temp += " "; } else { temp += "#"; } arr1[i] /= 2; arr2[i] /= 2; } reverse(temp.begin(), temp.end());.. 2022. 8. 11.
728x90
반응형