728x90
반응형
오랜만에 코딩테스트 연습하려고 프로그래머스 들어가니 뭔가 문제가 엄청 생겨있더라...
자기 전 조금만 머리 쓰려고 Day1, Day2 문제들을 풀어봤다.

- Day1 사칙연산
- 두 수의 합
- 두 수의 차
- 두 수의 곱
- 몫 구하기
- Day2 사칙연산, 조건문, 배열
- 두 수의 나눗셈
- 숫자 비교하기
- 분수의 덧셈
- 배열 두배 만들기
//Day 1
//두 수의 합
int solution(int num1, int num2) {
return num1+num2;
}
//두 수의 차
int solution(int num1, int num2) {
return num1-num2;
}
// 두 수의 곱
int solution(int num1, int num2) {
return num1*num2;
}
// 몫 구하기
int solution(int num1, int num2) {
return num1/num2;
}
//Day 2
//두 수의 나눗셈
int solution(int num1, int num2) {
return num1*1000/num2;
}
//숫자 비교하기
int solution(int num1, int num2) {
return num1 == num2 ? 1 : -1;
}
//분수의 덧셈
vector<int> solution(int numer1, int denom1, int numer2, int denom2) {
vector<int> answer;
answer.push_back(numer1*denom2+denom1*numer2);
answer.push_back(denom1*denom2);
int max = denom1 >= denom2 ? denom1 : denom2;
max = max >= answer.at(1) ? max : answer.at(1);
for(int n=max; n>1; n--){
if (answer.at(0)%n == 0 && answer.at(1)%n == 0){
answer.at(0) = answer.at(0)/n;
answer.at(1) = answer.at(1)/n;
}
}
return answer;
}
// 배열 두 배 만들기
vector<int> solution(vector<int> numbers) {
vector<int> answer;
for (int i=0; i<numbers.size(); i++){
answer.push_back(numbers.at(i)*2);
}
return answer;
}
순서대로 차근차근 30초컷 하다가 갑자기 분수의 덧셈에서 난이도 급상승해서 입문자용 맞아..?하면서 풀었는데...
막판에 계속 이상한 숫자 나오길래 수동 디버깅해보니가 비교문에서 answer.at(0)을 두 번 썼었다; (멍청1)
아니 그리고 지금 보니까 vector에 먼저 삽입했네; (멍청2) C# 문법 달라서 매번 할 때마다 까먹는다ㅠㅠ
그래도 수정하니까 추가했던 테스트 케이스도 바로 성공해서 제출~! 귀여운 스탬프 이미지 첨부 ㅋㅋ
12시 지나서 날짜 바뀐건 아쉽다... 내일 쉬는 날이니까 일어나서 Day3도 풀어봐야징
728x90
반응형
'코딩테스트 > 프로그래머스' 카테고리의 다른 글
[프로그래머스] 코딩테스트 입문 Day5 (0) | 2023.05.24 |
---|---|
[프로그래머스] 코딩테스트 입문 Day4 (1) | 2023.05.08 |
[프로그래머스] 코딩테스트 입문 Day3 (0) | 2023.05.02 |
[프로그래머스] 월간 코드 챌린지 시즌3 나머지가 1이 되는 수 찾기 (0) | 2022.06.01 |
[프로그래머스] 월간 코드 챌린지 시즌3 없는 숫자 더하기 (0) | 2022.05.29 |