<내가 입력한 코드>
import java.util.Scanner;
improt Random;
public class Main{
public static void main(String[] args) {
Scanner s = new Scanner(System.in);
int N = s.nextInt(); //배열엘 넣을 갯수인 N값 생성
int[] a = new int[] ; // 배열 생성
int num = 0; // v 값의 반복을 세줄 변수 생성
int v = s.nextInt(); // 무작위 수중 얼마나 반복되는지 찾고 싶은 변수값
for(int i =1; i<= N; i++) { // 배열에 값 집어넣기
a = s.Random();
if(int[] a==v)
num += 1;
}
System.out.println(N);
System.out.println(a);
System.out.println(v);
}
}
<정답>
import java.util.Scanner;
public class Main {
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
int N = sc.nextInt();
int[] array = new int[N];
int cnt = 0;
for(int i = 0; i < N; i++) {
array[i] = sc.nextInt();
}
int v= sc.nextInt();
for(int i = 0; i < array.length; i++) {
if (v == array[i]){
cnt++;
}
}
System.out.println(cnt);
}
}
<수정 보완>
import java.util.Scanner;
improt Random; -> x
public class Main{
public static void main(String[] args) {
Scanner s = new Scanner(System.in);
int N = s.nextInt(); //배열엘 넣을 갯수인 N값 생성
int[] a = new int[] ; // 배열 생성 -------------------> int array = new int[N];
int num = 0; // v 값의 반복을 세줄 변수 생성
int v = s.nextInt(); // 무작위 수중 얼마나 반복되는지 찾고 싶은 변수값
for(int i =1; i<= N; i++) { // 배열에 값 집어넣기
a = s.Random(); -------------------> array[i] = s.nextInt();
}
if(int[] a==v) { -------------------------> if(array==v) { num++;}
num += 1;
}
System.out.println(N);
System.out.println(a);
System.out.println(v);
}
}
사실 엄밀히 따지고 보면 답도 틀렸고, 내가 고친것도 틀렸다. 그런데 완벽하려면 예외를 쓰거나 메서드를 Token 메서드를 써야되는데 아직은 못쓰겟다.
'📟java > 백준' 카테고리의 다른 글
백준5597 자바 (0) | 2022.11.08 |
---|---|
[기초]백준 10818 자바 (0) | 2022.11.07 |
백준 1110 java (0) | 2022.10.23 |
백준 10952 java (0) | 2022.10.23 |
백준 2439 별 찍기 java (0) | 2022.10.23 |