728x90
숫자 카드 게임
숫자 카드 게임은 여러 개의 숫자 카드 중에서 가장 높은 숫자가 쓰인 카드 한 장을 뽑는 게임이다.
단 게임의 룰을 지키며 카드를 뽑아야 하고 룰은 다음과 간다.
- 숫자가 쓰인 카드들이 N X M 형태로 놓여 있다. N은 행, M은 열이다
- 먼저 카드를 뽑고자 하는 행을 고른다.
- 이후 그 행에 존재하는 카드들 중 가장 작은 값의 카드만 고를 수 있다.
입력 조건
- 첫째 줄에 카드들이 놓은 행의 개수 N과 열의 개수 M이 주어진다. (공백을 기준으로) (1 <= N,M <= 100)
- 둘째 줄부터 N개의 줄에 걸쳐 카드에 적힌 숫자가 주어진다. 각 숫자는 1이상 10000 이하의 자연수이다.
출력 조건
게임에 룰에 맞게 선택한 카드에 적힌 숫자를 출력하라
풀이
이 문제는 굉장히 간단하다.
각 행마다 들어오는 입력에 대해서 가장 작은 수를 찾은 뒤, 찾아낸 작은 수 중에서 가장 큰 수를 찾으면 된다.
구현은 다음과 같다.
public class Problem2 {
/**
* 숫자가 쓰인 카드들이 N X M 형태로 놓여 있다. N은 행, M은 열이다
* 먼저 카드를 뽑고자 하는 행을 고른다.
* 이후 그 행에 존재하는 카드들 중 가장 작은 값의 카드만 고를 수 있다.
*
* 입력 : 첫째 줄에 카드들이 놓은 행의 개수 N과 열의 개수 M이 주어진다. (공백을 기준으로) (1 <= N,M <= 100)
* 둘째 줄부터 N개의 줄에 걸쳐 카드에 적힌 숫자가 주어진다. 각 숫자는 1이상 10000 이하의 자연수이다.
* 첫째 줄에 겡ㅁ의 룰에 맞게 선택한 카드에 적힌 숫자를 선택한다.
*
* 4시 12분 시작 30분 종료
*
* 출력 : 가장 높은 카드를 출력하여라
*/
private int row;
private int column;
private ArrayList<Integer> rowCardMaxNumList = new ArrayList<>();
public static void main(String[] args) {
Problem2 problem2 = new Problem2();
System.out.println(problem2.solve());
}
public int solve(){
setInput();
return Collections.max(rowCardMaxNumList);
}
private void setInput(){
try(BufferedReader br = new BufferedReader(new InputStreamReader(System.in))) {
List<Integer> vars = Arrays.stream(br.readLine().split(" ")).map(Integer::parseInt).toList();
row = vars.get(0);
column = vars.get(1);
for(int i=0; i< row; i++) {
rowCardMaxNumList.add(Collections.min(
Arrays.stream(br.readLine().split(" "))
.map(Integer::parseInt).toList()
));
}
} catch (IOException e) {
e.printStackTrace();
}
}
}
📔 Reference
[이것이 취업을 위한 코딩 테스트다 - 나동빈]
GitHub - ndb796/python-for-coding-test: [한빛미디어] "이것이 취업을 위한 코딩 테스트다 with 파이썬" 전체
[한빛미디어] "이것이 취업을 위한 코딩 테스트다 with 파이썬" 전체 소스코드 저장소입니다. - GitHub - ndb796/python-for-coding-test: [한빛미디어] "이것이 취업을 위한 코딩 테스트다 with 파이썬" 전체 소
github.com
728x90
'Algorithm > 이것이 취업을 위한 코딩 테스트다' 카테고리의 다른 글
[알고리즘] 왕실의 나이트(구현) (0) | 2021.12.21 |
---|---|
[알고리즘] 구현 - 시각 (0) | 2021.12.20 |
[알고리즘] 구현 - 상하좌우 (0) | 2021.12.19 |
[알고리즘] 1이 될 때까지 (그리디 알고리즘) (0) | 2021.12.18 |
[알고리즘] 큰 수의 법칙 (그리디 알고리즘) (0) | 2021.12.16 |