본문 바로가기
728x90
반응형

Computer Science/Coding Test40

c++(cpp) 프로그래머스 - 코딩 테스트 : 하샤드 수 #include #include using namespace std; bool solution(int x) { bool answer = true; int x1 = x; int result=0; while(x > 0) { result += x % 10; x = x / 10 ; } if(x1 % result != 0) { answer = false; } else answer = true; return answer; } 2022. 7. 28.
c++(cpp) 프로그래머스 : 코딩 테스트 - 콜라츠 추측 #include #include using namespace std; int solution(int n) { int answer = 0; long long num = n; while(num != 1) { if(answer < 500) { if(num % 2 == 0) { num = num / 2; answer ++; } else if(num % 2 != 0) { num = num * 3 + 1; answer ++; } } else return -1; } return answer; } 2022. 7. 27.
c++(cpp) 프로그래머스 : 코딩 테스트 - 최대공약수와 최소공배수 #include #include using namespace std; int GCD(int n, int m) { int r; while (m != 0) { r = n % m; n = m; m = r; } return n; } vector solution(int n, int m) { vector answer; answer.push_back(GCD(n,m)); answer.push_back((n*m) / answer[0]); return answer; } 2022. 7. 27.
c++(cpp) 프로그래머스 : 코딩 테스트 - 제일 작은 수 제거하기 #include #include #include using namespace std; vector solution(vector arr) { vector answer; int mini = arr[0]; if(arr.size() arr[i]) { mini = arr[i]; } else { continue; } } for(int k = 0 ; k < arr.size() ; k++) { if(arr[k] == mini) { arr.erase(arr.begin() + k); } } answer = arr; } return answer; } 2022. 7. 27.
c++(cpp) 프로그래머스 : 코딩 테스트 - 정수 제곱근 판별 #include #include #include using namespace std; long long solution(long long n) { long long answer = 0; int num = sqrt(n); if( pow(num, 2) == n) { answer = pow(num+1,2); } else if(n == 1) { answer = 4; } else { answer = -1; } return answer; } 2022. 7. 27.
c++(cpp) 프로그래머스 : 코딩 테스트 - 정수 내림차순으로 배치하기 #include #include #include using namespace std; long long solution(long long n) { long long answer = 0; string temp = to_string(n); sort(temp.begin(), temp.end(), greater()); //string 873211 answer = stoll(temp); return answer; } 2022. 7. 27.
c++(cpp) 프로그래머스 : 코딩 테스트 - 자연수 뒤집어 배열로 만들기 #include #include using namespace std; vector solution(long long n) { vector answer; string s = to_string(n); for(int i = s.size() ; i > 0 ; i--) { answer.push_back(s[i-1]-'0'); // answer.push_back(s[i-1]-48); 도 가능 } return answer; } 2022. 7. 26.
c++(cpp) 프로그래머스 : 코딩 테스트 - 자릿수 더하기 #include #include using namespace std; int solution(int n) { int answer = 0; string s = to_string(n); for(int i = 0 ; i < s.size(); i++) { s[i] = s[i] - 48; //48대신 '0'으로 써도 된다. //s[i] = s[i]-'0'; 이렇게.. answer += s[i]; } return answer; } 2022. 7. 26.
c++(cpp) 프로그래머스 : 코딩테스트 - 신규 아이디 추천 #include #include #include #include using namespace std; string solution(string new_id) { string answer = ""; // 소문자 치환 for(char& ch : new_id) { ch = tolower(ch); } // 소문자, 숫자, -, _, . 제외한 모든 문자 제거 for(char ch : new_id) { if(isalpha(ch) || isdigit(ch) || strchr("-_.", ch)) answer += ch; } // .가 두개 이상 -> 하나로 int idx = -1; while((idx = answer.find("..")) != -1) //answer안에 ..이 있을 때 까지 돌기 { answer.r.. 2022. 7. 26.
728x90
반응형