8000 Update 2461.cpp · DAHEEKIM1/basic-algo-lecture@8ca0e13 · GitHub
[go: up one dir, main page]

10000 Skip to content

Commit 8ca0e13

Browse files
Update 2461.cpp
1 parent 1156031 commit 8ca0e13

File tree

1 file changed

+26
-25
lines changed

1 file changed

+26
-25
lines changed

0x14/solutions/2461.cpp

Lines changed: 26 additions & 25 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
// Authored by : jimi567
22
// Co-authored by : -
3-
// http://boj.kr/73dbdb8d97e84a1f9b1f6852b58d9cd2
3+
// http://boj.kr/7d30341579424e59a3868fc91e1980d6
44
#include <bits/stdc++.h>
55
using namespace std;
66
#define X first
@@ -9,30 +9,31 @@ using namespace std;
99
int n, m;
1010
int arr[1005][1005];
1111
int ans = 0x7f7f7f7f;
12-
vector<int> idx; //각 팀들의 현재 인덱스를 저장하는 벡터.
12+
vector<int> idx; //각 팀들의 현재 인덱스를 저장하는 벡터.
1313
int main(void) {
14-
ios::sync_with_stdio(0);
15-
cin.tie(0);
16-
cin >> n >> m;
17-
for (int i = 0;i < n;i++) {
18-
idx.push_back(0);
19-
for (int j = 0;j < m;j++) cin >> arr[i][j];
14+
ios::sync_with_stdio(0);
15+
cin.tie(0);
16+
cin >> n >> m;
17+
for (int i = 0; i < n; i++) {
18+
idx.push_back(0);
19+
for (int j = 0; j < m; j++) cin >> arr[i][j];
20+
}
21+
for (int i = 0; i < n; i++) sort(arr[i], arr[i] + m);
22+
while (1) {
23+
int mntm;
24+
int mx = -1;
25+
int mn = 0x7f7f7f7f;
26+
for (int i = 0; i < n; i++) {
27+
if (mn > arr[i][idx[i]]) { //최솟값 갱신, 최솟값을 가지는 팀 갱신
28+
mn = arr[i][idx[i]];
29+
mntm = i;
30+
}
31+
if (mx < arr[i][idx[i]]) mx = arr[i][idx[i]]; //최댓값 갱신
2032
}
21-
for (int i = 0;i < n;i++) sort(arr[i], arr[i] + m);
22-
while (1) {
23-
int mntm;
24-
int mx = -1;
25-
int mn = 0x7f7f7f7f;
26-
for (int i = 0;i < n;i++) {
27-
if (mn > arr[i][idx[i]]) { //최솟값 갱신, 최솟값을 가지는 팀 갱신
28-
mn = arr[i][idx[i]];
29-
mntm = i;
30-
}
31-
if (mx < arr[i][idx[i]]) mx = arr[i][idx[i]]; //최댓값 갱신
32-
}
33-
ans = min(ans, mx-mn);
34-
idx[mntm] += 1;
35-
if (idx[mntm] == m) break; //만약 최솟값을 가지는 팀이 마지막 인덱스에 해당하면 종료.
36-
}
37-
cout << ans;
33+
ans = min(ans, mx - mn);
34+
idx[mntm] += 1;
35+
if (idx[mntm] == m)
36+
break; //만약 최솟값을 가지는 팀이 마지막 인덱스에 해당하면 종료.
37+
}
38+
cout << ans;
3839
}

0 commit comments

Comments
 (0)
0