🗣️ 할 말 있을 때만 하는 메모
오늘은 할 말이 없어용!
✏️ [PCCE 기출문제] 3번 / 수 나누기
🔔 문제 설명
2자리 이상의 정수 number가 주어집니다. 주어진 코드는 이 수를 2자리씩 자른 뒤, 자른 수를 모두 더해서 그 합을 출력하는 코드입니다. 코드가 올바르게 작동하도록 한 줄을 수정해 주세요.
🔔 제한사항
- 10 ≤ number ≤ 2,000,000,000
- number의 자릿수는 2의 배수입니다.
📄 Solution.java
👉🏻 [디버깅(Debugging) 문제 안내]
디버깅(Debugging)은 이미 완성된 코드에서 버그를 찾아 수정하는 문제 타입입니다.
1줄만 수정하여 버그를 고치세요.
2줄 이상 수정할 경우, 실행 결과에 에러 메시지가 표시됩니다.
import java.util.Scanner;
public class Solution {
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
int number = sc.nextInt();
int answer = 0;
for(int i=0; i<1; i++){
answer += number % 100;
number /= 100;
}
System.out.println(answer);
}
}
📄 입력 예시 #1
4589
📄 출력 예시 #1
107
👉🏻 입력된 수를 2자리씩 나눠 합치면 다음과 같습니다.
48 + 59 = 107
📄 입력 예시 #2
29
📄 출력 예시 #2
29
👉🏻 입력된 수를 2자리씩 나눠 합치면 다음과 같습니다.
29 = 29
🔥🎉 TRY #1 [실행 결과]
👉🏻 Solution.java를 아무것도 바꾸지 않고 실행해 보니 입력 예시#1에 대한 출력값이 59, #2는 29가 나왔음
👉🏻 i<2로 수정해 보니 4859가 잘 나오길래 제한사항인 <= 2,000,000에서 두 자리씩 나눠 보니 20/00/00/00/00 다섯 묶음!
import java.util.Scanner;
public class Solution {
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
int number = sc.nextInt();
int answer = 0;
for(int i=0; i<5; i++){
answer += number % 100;
number /= 100;
}
System.out.println(answer);
}
}
출처: 프로그래머스 코딩 테스트 연습,
https://school.programmers.co.kr/learn/courses/30/lessons/340205
프로그래머스
SW개발자를 위한 평가, 교육, 채용까지 Total Solution을 제공하는 개발자 성장을 위한 베이스캠프
programmers.co.kr