import java.util.Scanner;
public class Main{
public static void main(String[]args){
Scanner sc = new Scanner(System.in);
int a = sc.nextInt();
int b = sc.nextInt();
int c = sc.nextInt();
int d = sc.nextInt();
int bae = 0;
if(a==0)bae++;
if(b==0)bae++;
if(c==0)bae++;
if(d==0)bae++;
if(bae == 1) System.out.println("A");
if(bae == 2) System.out.println("B");
if(bae == 3) System.out.println("C");
if(bae == 4) System.out.println("D");
if(bae == 0) System.out.println("E");
}
}
틀린 이유
문제에서 결과를 3회 반복하라고 했는데, 위의 코드는 딱 한 번만 출력이 된다.
수정한 코드
package com.practice;
import java.util.Scanner;
public class Pre_02_02 {
public static void main(String[]args){
// 배를 int로 초기화한다.
int cnt= 0;
// 배열 생성
String[] arr = new String[4];
// 4개의 입력 값을 받는다.
Scanner sc = new Scanner(System.in);
// 하나의 배열에 입력 값을 담는다.
for(int j=0;j<3;j++){ // 💡 이 부분을 추가하였음
for(int i=0;i<4;i++){
arr[i] = sc.next();
}
// 반복문을 배열의 길이만큼 돌려서 0의 개수를 구한다.
for(int i=0; i<4;i++){
if(arr[i].equals("0")){
cnt++;
}
}
if(cnt==1) System.out.println("A");
if(cnt==2) System.out.println("B");
if(cnt==3) System.out.println("C");
if(cnt==4) System.out.println("D");
if(cnt==0) System.out.println("E");
cnt = 0;
};
}
}
오늘 배운 점
1) 문제 꼼꼼하게 읽기
2) 너무 어렵게 생각하지 말고 한 행을 n번 출력하라고 한다 -> 다중 for문 이용하기
3) 하나의 방법으로만 풀려고 하지 말고, 넓게 생각하기
728x90
'📓 Study > Coding Test' 카테고리의 다른 글
GCD LCM = 유클리드 호제법 (0) | 2021.11.22 |
---|---|
[Algorithm Jobs] 소수 판별 (0) | 2021.11.10 |
[Algorithm Jobs] 약수 구하기 오답 노트 (0) | 2021.11.04 |
[Programmers/JAVA] 자연수 뒤집어 배열로 만들기 (0) | 2021.10.25 |
[Programmers/JAVA] 평균 구하기 (0) | 2021.09.24 |
댓글