프로그래머스 코딩테스트 입문 lv.0 두 수의 차
안녕하세요.
오늘부터 프로그래머스 코딩테스트 입문부터 각 난이도 별로 조금씩 풀어보려고 합니다.
코딩테스트로서 이직도 해보고 저의 한계도 경험해서 저를 좀 더 좋은 개발자로서 만들려고 하는 노력입니다.
제 생각은 제가 고민해서 풀어보고, 남이 푼 것도 보고 좋은 소스라면 연구하는 자세를 키워보려고 합니다.
물론 즉각 이해되지는 않겠지만 말이죠 ^^
그러면 "천하의 아귀가 혓바닥이 이렇게 길어"라 할정도로 서론이 제 희망으로 가득 찼는데요
다음화부터는 바로 진행하도록 하겠습니다.
1. 제 풀이 > 2. 분석 > 3. 다른 사람의 풀이 > 4. 보고 연습 및 분석의 순서로 학습할 예정입니다.
최종 목표는 좋은 회사로 취직하는 것! 모두들 파이팅입니다!!
1번 문제 : 두 수의 차
문제 : 정수 num1과 num2가 주어질 때, num1에서 num2를 뺀 값을 return 하도록 soltuion 함수를 완성해 주세요.
조건 : -50000 ≤ num1 ≤ 50000, -50000 ≤ num2 ≤ 50000
입출력 예
num1 | num2 | result |
2 | 3 | -1 |
100 | 2 | 98 |
입출력 예 설명
입출력 예 #1
num1이 2이고 num2가 3이므로 2 - 3 = -1을 return 합니다.
입출력 예 #2
num1이 100이고 num2가 2이므로 100 - 2 = 98을 return합니다.
1. 풀이
int solution(int num1, int num2) {
int answer = -1;
if(0 < num1 <=100 && 0 < num2 <= 100){
answer = num1%num2;
return answer;
}
}
2. 분석 :
- 단순하고 직관적으로 정의하는 것이 관리에 수월해서 일단은 단순하게 풀어 봤습니다.
- 그런데 조건(제한사항)을 맞추지 않아서 저는 좀 실수했다는 생각이 들었습니다.
- 뭐 어떻게 하겠습니까 앞으로 잘해야지 하고 생각을 해서 다시 마음을 다졌습니다.
3. 다른 정답자들의 풀이
class Solution {
public int solution(int num1, int num2) {
int answer = 0;
if((-50000 <= num1 && num1 <= 50000) && (-50000 <= num1 && num1 <= 50000)) {
answer = num1 - num2;
}
return answer;
}
}//Bran , dlqtk0825@gmail.com , sksrywlfTK , 고푸름 외 6 명
4. 분석
- 조건도 깔끔하게 입력을 잘하셨고
- 리턴값도 명확히 잘 정의하신 것 같습니다.
5. 느낀 점
- 제한사항(요구사항, 조건)을 얕잡아봐선 안 되겠구나를 느꼈습니다.