Tags
- Brute Force Algorithm
- ๊น์ด ์ฐ์ ํ์
- Python
- BFS
- CodingTest
- sort
- ์ ์๋ก
- DP
- ์ํ
- ๊ตฌํ
- PGM
- BOJ
- LV2
- stack
- greedy
- SpringBoot
- ์ ๋ ฌ
- Study
- ๋ฐฑํธ๋ํน
- Dynamic Programming
- ์๋ฎฌ๋ ์ด์
- ๊ทธ๋ํ ํ์
- ๊ทธ๋ํ ์ด๋ก
- ๊ต์ฌ
- queue
- ๋ฌธ์์ด
- dfs
- Java
- ๋๋น ์ฐ์ ํ์
- ์๋ฃ๊ตฌ์กฐ
Archives
๊ธฐ๋ก๋ฐฉ
BOJ_1181 : ๋จ์ด ์ ๋ ฌ ๋ณธ๋ฌธ
๐ธ ๋ฌธ์ ๋ถ์ ๐ธ
- ๋ฌธ์์ด์ ๊ธธ์ด ๋ด๋ฆผ์ฐจ์ ์ ๋ ฌ๊ณผ ์ฌ์ ์ ์ ๋ ฌ์ ๊ฐ์ด ์ ์ฉํ๋ ๋ฌธ์ ์ด๋ค.
- <algorithm>ํค๋ ์ sort ํจ์ compare์ธ์๋ฅผ ์ฌ์ฉํ๋ฉด ์ฝ๊ฒ ํ ์ ์๋ค.
๐ธ ์ฝ๋ ๐ธ
#include<iostream>
#include<vector>
#include<algorithm>
using namespace std;
bool check(std::string& a, std::string& b) {
if (a.size() < b.size())
return true;
else if (a.size() == b.size())
{
if (a.compare(b) >= 0)
return false;
return true;
}
return false;
}
int main(void) {
int N;
cin >> N;
vector<string> str(N);
for (int i = 0; i < N; i++)
cin >> str[i];
sort(str.begin(), str.end(), check);
string temp = str[0];
cout << temp << endl;
for (int i = 1; i < N; i++)
{
if (temp != str[i]) {
cout << str[i] << endl;
temp = str[i];
}
}
return 0;
}
๐ธ ์ฝ๋ ํด์ ๐ธ
- ๋ฌธ์์ด์ string ๋ฒกํฐ์ ์ ๋ ฅ๋ฐ๊ณ sortํจ์์ 3๋ฒ์งธ ์ธ์์ธ ๋น๊ต๊ธฐ ํจ์ check ๋ฅผ ์ค์ ํ๋ค.
- check ํจ์
- ๋ฌธ์์ด ๊ฐ ๋ณต์ฌ๋ฅผ ๋ฐฉ์งํ๊ธฐ ์ํด ์ฐธ์กฐํ์ผ๋ก string์ ๋น๊ตํ๋๋ก ํ๋ค.
- ๋ด๋ฆผ์ฐจ์ ์ ๋ ฌ์ด ๋์ผํ๋ฏ๋ก a.size() > b.size() ์ด๋ฉด true๋ฅผ ๋ฐํํ๋ ค ํ๋๋ ๋ฐ๋๋ก ์ค๋ฆ์ฐจ์ ์ ๋ ฌ์ด ๋์ด์
๋ถํธ๋ฅผ ๋ฐ๋๋ก ์ ์ฉํด์ฃผ์๋ค (์ด์ ๋ ๋ชจ๋ฅด๊ฒ ๋ค...) - ๋ฌธ์์ด์ ๋น๊ตํ๋ compare ํจ์๋ฅผ ์ด์ฉํด ์ฌ์ ์ ์ ๋ ฌ์ ์ํํ ์ ์๋ค.
- a.compare(b) > 0 ์ด๋ฉด, a > b
- a.compare(b) == 0 ์ด๋ฉด, a == b
- a.compare(b) < 0 ์ด๋ฉด, a < b
- ์ฝ๋์์๋ a < b ์์๋ง true๋ฅผ ๋ฐํํ๋ค.
- ์ ํํ ๋น๊ต๊ธฐ ํจ์์ ์ ์๋ฅผ ์ฐพ์๋ณด์ง ๋ชปํ์ง๋ง, true๋ฅผ ๋ฐํํ๋ฉด ๊ทธ์ํ๊ฐ ok ๋ผ๋ ๋ป์ธ ๊ฒ ๊ฐ๋ค.
(์๋๋ true๋ฅผ ๋ฐํํ๋ฉด ๊ตํ์ด ์ด๋ฃจ์ด ์ ธ์ผ ํ๋ค๊ณ ๋ดค๋๋ฐ, ์ฝ๋๋ฅผ ๋ถ๋ถ์ ์ผ๋ก ๋๋ ค๋ณด๋ฉฐ ํ์ธํด๋ณด๋ ์ด๋ ๋ค) - ๋ฐ๋ผ์ a.size() < b.szie()์ด๊ณ a < b์ธ ์ํ๋ฅผ ๋ง๋ค์ด์ค๋ค.
๐ธ end ๐ธ
- ๋ฌธ์ ๋ฅผ ๋ณด๊ณ ๋ฐ๋ก ์ผ๋ง์ ์ ํ์๋ ์ฌ์ ์ ํ์ด ๋ฐฉ๋ฒ์ด ๋ ์ฌ๋ผ ์ ์ฉ์์ผฐ๋ค. ๋ด ํ์ด_2204
- ์ ๋ฒ ๋ฌธ์ ํ์ด์์ ์๊ฐํ๋ ๋น๊ต๊ธฐ ํจ์์ ์๋ฆฌ๊ฐ ์ข ๋ค๋ฅธ ๊ฒ ๊ฐ์์ ๋ค๋ฅธ ๋ฌธ์ ๋ฅผ ํ๋ ์ฃผ์ํด์ผ ํ ๊ฒ ๊ฐ๋ค.
- compare ํจ์๋ฅผ ์ข ๋ ํธํ๊ฒ ๊ฒฐ๊ณผ๋ฅผ ์๊ฐํ๋ ๋ฐฉ๋ฒ์ ๋ฐฐ์์ ์ ์ด๋ณด์๋ค.
728x90
'CodingTest > C++' ์นดํ ๊ณ ๋ฆฌ์ ๋ค๋ฅธ ๊ธ
BOJ_10820 : ๋ฌธ์์ด ๋ถ์ (0) | 2022.06.02 |
---|---|
BOJ_15351 : ์ธ์ ์ ์ (0) | 2022.06.02 |
BOJ_2292 : ๋ฒ์ง (0) | 2022.06.01 |
BOJ_2231 : ๋ถํดํฉ (0) | 2022.06.01 |
BOJ_10250 : ACM ํธํ (0) | 2022.06.01 |