시나리오 :
많은 인파 중 친구 2명을 찾아야하는데, 키를 이용해 후보군을 추려 친구를 찾아보려 한다.
import java.io.*;
import java.lang.*;
import java.util.*;
public class Main {
public static final Scanner scanner = new Scanner(System.in);
/**
*
* @param data 각 사람들의 키를 저장한 배열
* @param n 사람들의 수
* @param m 찾아야 하는 첫번째 사람의 키
* @param s 찾아야 하는 두번째 사람의 키
* @return 첫번째 혹은 두번째 사람과 키가 일치하는 사람의 수
*/
public static int getCount(int[] data, int n, int m, int s){
int count = 0 ; //확인해보아야 할 후보의 수
for(int i = 0; i < n; i++){
//i := 0 ~ n-1 사이의 모든 정수
//data[i] := data[0] ~ data[n-1] 의 모든 원수(값)
if(data[i] == m || data[i] == s){ //만약 첫번째(m)나 두번쨰(s) 사람과 키가 같다면
count++; //확인할 수가 하나씩 늘어남
}
}
return count;
}
public static void main(String[] args) throws Exception {
int n = scanner.nextInt(); //총 사람 인원
int m = scanner.nextInt(); //찾을 사람(1)의 키
int s = scanner.nextInt(); //찾을 사람(2)의 키
int[] data = new int[n]; //모든 사람들의 키 배열
for (int i = 0; i < n; i++) {
data[i] = scanner.nextInt();
}
int answer = getCount(data, n, m, s);
System.out.println(answer);
}
}
10주 완성 알고리즘 코딩테스트 - goorm edu에서 들으실 수 있는 내용입니다.
'알고리즘' 카테고리의 다른 글
입력 받은 정수형 배열에서 원하는 값이 있는 인덱스를 반환하는 알고리즘 (0) | 2023.04.13 |
---|---|
입력 받은 정수형 배열(몸무게)을 통해 놀이기구의 탑승 가능 여부를 출력하는 알고리즘 (1) | 2023.04.12 |
입력 받은 정수 중 최댓값 구하기 (0) | 2023.04.10 |
입력 받은 정수들의 합 구하기 (0) | 2023.04.07 |
입력 받은 두 정수 중 더 큰 값 반환하기 (0) | 2023.04.06 |