[기억할 내용들]
- 오름차순 선택정렬로 배열을 정렬한다.
- 정렬된 배열에서 남은 내용들을 구현한다.
- 정렬만 하면 쉬운 문제라서 딱히 기억할 만한건 없다.
[나의 코드]
#include <iostream>
#include <stdio.h>
#include <string>
#include <fstream>
#include <vector>
#include <algorithm>
using namespace std;
int main() {
ios_base::sync_with_stdio(false);
int n;
cin >> n;
vector<int> table(n);
for (int i = 0; i < n; i++)
cin >> table[i];
for (int i = 0; i < n - 1; i++) {
int idx = i;
for (int j = i+1; j < n; j++) {
if (table[idx] < table[j])
idx = j;
}
int tmp = table[i];
table[i] = table[idx];
table[idx] = tmp;
}
int cnt = 0;
int min = 101;
for (int i = 0; cnt!=3; i++) {
if (min > table[i]) {
min = table[i];
cnt++;
}
}
cout << min << "\n";
return 0;
}
[강의 코드]
#include <iostream>
#include <stdio.h>
#include <string>
#include <fstream>
#include <vector>
#include <algorithm>
using namespace std;
int main() {
int n, a[101], i, j, tmp, idx, cnt = 0;
scanf_s("%d", &n);
for (i = 0; i < n; i++) {
scanf_s("%d", &a[i]);
}
for (i = 0; i < n - 1; i++) {
idx = i;
for (j = i + 1; j < n; j++) {
if (a[j] > a[idx]) idx = j;
}
tmp = a[i];
a[i] = a[idx];
a[idx] = tmp;
}
for (i = 1; i < n; i++) {
if (a[i - 1] != a[i]) cnt++;
if (cnt == 2) {
printf("%d\n", a[i]);
break;
}
}
return 0;
}
[의견]
딱히 의견이 없다. 오늘 공부 끝~~!