[Java] 알고리즘 문제풀이
[CodeUp / java] 1093 : [기초-1차원배열] 이상한 출석 번호 부르기1
sweetychocoding
2023. 9. 5. 00:51
728x90
import java.io.BufferedReader;
import java.io.BufferedWriter;
import java.io.IOException;
import java.io.InputStreamReader;
import java.io.OutputStreamWriter;
public class Main {
public static void main(String[] args) throws IOException {
BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
BufferedWriter bw = new BufferedWriter(new OutputStreamWriter(System.out));
int callRollTime = Integer.parseInt(br.readLine()); // 출석을 부를 횟수
int[] numStudent = new int[23]; // 학생들의 출석 번호
String strRandomNum = br.readLine(); // 랜덤 출석 번호 입력
String[] arrStrRandomNum = strRandomNum.split(" "); // String형 배열로 공백 기준으로 저장
int[] arrRandomNum = new int[arrStrRandomNum.length]; // String형 배열 길이만큼 int형 배열 선언
for (int i = 0; i < arrStrRandomNum.length; i++) {
arrRandomNum[i] = Integer.parseInt(arrStrRandomNum[i]); // String형 배열에 값을 형변환하여 int형 배열에 저장
}
for (int i = 0; i < callRollTime; i++) {
int randomNum = arrRandomNum[i]; // 배열에 있는 랜덤번호 randomNum에 저장하기
numStudent[randomNum - 1] += 1; // 인덱스 번호가 0부터인걸 고려해서 [randomNum-1]에 카운트하기
}
for (int i = 0; i < numStudent.length; i++) {
System.out.printf("%d ", numStudent[i]);
}
}
}

Scanner를 사용해서 애초에 int형으로 숫자를 받았더라면 더 쉬웠을 듯
그래도 나는 결국 해냈다
으하하하하핳
728x90