일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | |||
5 | 6 | 7 | 8 | 9 | 10 | 11 |
12 | 13 | 14 | 15 | 16 | 17 | 18 |
19 | 20 | 21 | 22 | 23 | 24 | 25 |
26 | 27 | 28 | 29 | 30 | 31 |
Tags
- Navigation Component
- Transition
- 여행
- javap
- abstract
- Recylcer
- Interface
- 심리학
- bytecode 분석
- jvm
- 일상탈출
- 버킷리스트
- 심리여행
- static
- 일상회피
- 보안
- 회피
- 치유
- Shared Elements
- bytecode
- ㅇ
- opcode
- throws
- 여행계획
- 보안취약점
- Android
- 취약점
- extends
- HelloWorld
- IMPLEMENT
Archives
- Today
- Total
패스트터틀
(Baekjoon) GreedyAlgorithm - (10) 신입사원 본문
https://www.acmicpc.net/problem/1946
시간초과 문제로 골머리를 앓다가
너무 머리를 복잡하게 해서 생겼다는것을 알고 다시 고친문제다
시간 문제는 오름차순을 없애버리고 그저 입력받을때 바로 순위를 정해주면 해결되고
오름차순에서 비교문제는 전부다 할필요없고
최댓값,최솟값구하기 알고리즘과 비슷하게하고 count를 세주면된다.
package GreedyAlgorithm;
import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;
public class _1946 {
public static void main(String[] args) throws IOException {
BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
int T = Integer.parseInt(br.readLine()), N, apply[][];
int count[] = new int[T], min, rank;
String s[];
for (int i = 0; i < T; i++) {
N = Integer.parseInt(br.readLine());
apply = new int[N][2];
for (int j = 0; j < N; j++) {
s = br.readLine().split(" ");
rank = Integer.parseInt(s[0]) - 1;
apply[rank][0] = rank;
apply[rank][1] = Integer.parseInt(s[1]);
}
count[i] = 1;
min = apply[0][1];
for (int j = 1; j < apply.length; j++) {
if (min > apply[j][1]) {
min = apply[j][1];
count[i]++;
}
}
}
for (int i = 0; i < count.length; i++) {
System.out.println(count[i]);
}
}
}
백준문제풀이Github :
https://github.com/sdk0213/baekjoon-study
'Algorithm > baekjoon' 카테고리의 다른 글
(Baekjoon) dfs,bfs - (1) dfs,bfs (0) | 2019.11.13 |
---|---|
(Baekjoon) GreedyAlgorithm - (11) 기타줄 (0) | 2019.11.10 |
(Baekjoon) GreedyAlgorithm - (9) 잃어버린 괄호 (0) | 2019.11.08 |
(Baekjoon) GreedyAlgorithm - (8) 문자열 (0) | 2019.11.08 |
(Baekjoon) GreedyAlgorithm - (7) 대회 or 인턴 (0) | 2019.11.07 |
Comments