๐ ๊ณต๋ถํ๋ ์ง์ง์ํ์นด๋ ์ฒ์์ด์ง?
[BAEKJOON C++] 1181_๋จ์ด ์ ๋ ฌ ๋ณธ๋ฌธ
728x90
๋ฐ์ํ
์ํ๋ฒณ ์๋ฌธ์๋ก ์ด๋ฃจ์ด์ง N๊ฐ์ ๋จ์ด๊ฐ ๋ค์ด์ค๋ฉด ์๋์ ๊ฐ์ ์กฐ๊ฑด์ ๋ฐ๋ผ ์ ๋ ฌํ๋ ํ๋ก๊ทธ๋จ
๊ธธ์ด๊ฐ ์งง์ ๊ฒ๋ถํฐ
๊ธธ์ด๊ฐ ๊ฐ์ผ๋ฉด ์ฌ์ ์์ผ๋ก
๋จ, ์ค๋ณต๋ ๋จ์ด๋ ํ๋๋ง ๋จ๊ธฐ๊ณ ์ ๊ฑฐํด์ผ ํ๋ค.
์ ๋ ฅ
์ฒซ์งธ ์ค์ ๋จ์ด์ ๊ฐ์ N์ด ์ฃผ์ด์ง๋ค. (1 ≤ N ≤ 20,000)
๋์งธ ์ค๋ถํฐ N๊ฐ์ ์ค์ ๊ฑธ์ณ ์ํ๋ฒณ ์๋ฌธ์๋ก ์ด๋ฃจ์ด์ง ๋จ์ด๊ฐ ํ ์ค์ ํ๋์ฉ ์ฃผ์ด์ง๋ค.
์ฃผ์ด์ง๋ ๋ฌธ์์ด์ ๊ธธ์ด๋ 50์ ๋์ง ์๋๋ค.
์ถ๋ ฅ
์กฐ๊ฑด์ ๋ฐ๋ผ ์ ๋ ฌํ์ฌ ๋จ์ด๋ค์ ์ถ๋ ฅํ๋ค.
// [1181] ๋จ์ด ์ ๋ ฌ
/*
์ํ๋ฒณ ์๋ฌธ์๋ก ์ด๋ฃจ์ด์ง N๊ฐ์ ๋จ์ด๊ฐ ๋ค์ด์ค๋ฉด ์๋์ ๊ฐ์ ์กฐ๊ฑด์ ๋ฐ๋ผ ์ ๋ ฌํ๋ ํ๋ก๊ทธ๋จ
๊ธธ์ด๊ฐ ์งง์ ๊ฒ๋ถํฐ
๊ธธ์ด๊ฐ ๊ฐ์ผ๋ฉด ์ฌ์ ์์ผ๋ก
๋จ, ์ค๋ณต๋ ๋จ์ด๋ ํ๋๋ง ๋จ๊ธฐ๊ณ ์ ๊ฑฐํด์ผ ํ๋ค.
์
๋ ฅ
์ฒซ์งธ ์ค์ ๋จ์ด์ ๊ฐ์ N์ด ์ฃผ์ด์ง๋ค. (1 ≤ N ≤ 20,000)
๋์งธ ์ค๋ถํฐ N๊ฐ์ ์ค์ ๊ฑธ์ณ ์ํ๋ฒณ ์๋ฌธ์๋ก ์ด๋ฃจ์ด์ง ๋จ์ด๊ฐ ํ ์ค์ ํ๋์ฉ ์ฃผ์ด์ง๋ค.
์ฃผ์ด์ง๋ ๋ฌธ์์ด์ ๊ธธ์ด๋ 50์ ๋์ง ์๋๋ค.
์ถ๋ ฅ
์กฐ๊ฑด์ ๋ฐ๋ผ ์ ๋ ฌํ์ฌ ๋จ์ด๋ค์ ์ถ๋ ฅํ๋ค.
*/
#define _CRT_SECURE_NO_WARNINGS
// ํ์ค ์คํธ๋ฆผ์์ ์ฝ๊ธฐ ๋ฐ ์ฐ๊ธฐ๋ฅผ ์ ์ดํ๋ ๊ฐ์ฒด๋ฅผ ์ ์ธ
#include <iostream>
#include <algorithm> // find
#include <string>
#include <cmath> // abs
#include <vector>
using namespace std;
int cmp(string a, string b) {
// 1. ๊ธธ์ด๊ฐ ๊ฐ๋ค๋ฉด, ์ฌ์ ์์ผ๋ก
if (a.length() == b.length()) {
return a < b;
}
// 2. ๊ธธ์ด๊ฐ ๋ค๋ฅด๋ค๋ฉด, ์งง์ ์์ผ๋ก
else {
return a.length() < b.length();
}
}
string word[20000];
int main() {
int N;
cin >> N;
for (int i = 0; i < N; i++) {
cin >> word[i];
}
sort(word, word + N, cmp);
for (int i = 0; i < N; i++) {
// ์ค๋ณต๋ ๊ฒฝ์ฐ ํ๋ฒ๋ง ์ถ๋ ฅ
if (word[i] == word[i - 1]) {
continue;
}
cout << word[i] << "\n";
}
return 0;
}
728x90
๋ฐ์ํ
'๐ฆฅ ์ฝํ > BAEKJOON' ์นดํ ๊ณ ๋ฆฌ์ ๋ค๋ฅธ ๊ธ
[BAEKJOON C++] 1026_๋ณด๋ฌผ (0) | 2023.07.28 |
---|---|
[BAEKJOON C++] 10867_์ค๋ณต ๋นผ๊ณ ์ ๋ ฌํ๊ธฐ (0) | 2023.07.27 |
[BAEKJOON C++] 3049_๋ค๊ฐํ์ ๋๊ฐ์ ๋ค๊ตญ์ด (0) | 2023.07.26 |
[BAEKJOON C++] 2495_์ฐ์๊ตฌ๊ฐ (0) | 2023.07.25 |
[BAEKJOON C++] 2484_์ฃผ์ฌ์ ๋ค๊ฐ (0) | 2023.07.25 |
Comments