๋ฌธ์ ์ค๋ช
์ ํ๋ฒํธ๋ถ์ ์ ํ ์ ํ๋ฒํธ ์ค, ํ ๋ฒํธ๊ฐ ๋ค๋ฅธ ๋ฒํธ์ ์ ๋์ด์ธ ๊ฒฝ์ฐ๊ฐ ์๋์ง ํ์ธํ๋ ค ํฉ๋๋ค.
์ ํ๋ฒํธ๊ฐ ๋ค์๊ณผ ๊ฐ์ ๊ฒฝ์ฐ, ๊ตฌ์กฐ๋ ์ ํ๋ฒํธ๋ ์์์ด์ ์ ํ๋ฒํธ์ ์ ๋์ฌ์
๋๋ค.
- ๊ตฌ์กฐ๋ : 119
- ๋ฐ์ค์ : 97 674 223
- ์ง์์ : 11 9552 4421
์ ํ๋ฒํธ๋ถ์ ์ ํ ์ ํ๋ฒํธ๋ฅผ ๋ด์ ๋ฐฐ์ด phone_book ์ด solution ํจ์์ ๋งค๊ฐ๋ณ์๋ก ์ฃผ์ด์ง ๋, ์ด๋ค ๋ฒํธ๊ฐ ๋ค๋ฅธ ๋ฒํธ์ ์ ๋์ด์ธ ๊ฒฝ์ฐ๊ฐ ์์ผ๋ฉด false๋ฅผ ๊ทธ๋ ์ง ์์ผ๋ฉด true๋ฅผ return ํ๋๋ก solution ํจ์๋ฅผ ์์ฑํด์ฃผ์ธ์.
์ ํ ์ฌํญ
- phone_book์ ๊ธธ์ด๋ 1 ์ด์ 1,000,000 ์ดํ์ ๋๋ค.
- ๊ฐ ์ ํ๋ฒํธ์ ๊ธธ์ด๋ 1 ์ด์ 20 ์ดํ์ ๋๋ค.
์ ์ถ๋ ฅ ์์
phone_bookreturn
[119, 97674223, 1195524421] | false |
[123,456,789] | true |
[12,123,1235,567,88] | false |
์ ์ถ๋ ฅ ์ ์ค๋ช
์
์ถ๋ ฅ ์ #1
์์์ ์ค๋ช
ํ ์์ ๊ฐ์ต๋๋ค.
์
์ถ๋ ฅ ์ #2
ํ ๋ฒํธ๊ฐ ๋ค๋ฅธ ๋ฒํธ์ ์ ๋์ฌ์ธ ๊ฒฝ์ฐ๊ฐ ์์ผ๋ฏ๋ก, ๋ต์ true์
๋๋ค.
์
์ถ๋ ฅ ์ #3
์ฒซ ๋ฒ์งธ ์ ํ๋ฒํธ, “12”๊ฐ ๋ ๋ฒ์งธ ์ ํ๋ฒํธ “123”์ ์ ๋์ฌ์
๋๋ค. ๋ฐ๋ผ์ ๋ต์ false์
๋๋ค.
#include <string>
#include <vector>
using namespace std;
bool solution(vector<string> phone_book) {
for (int i = 0; i < phone_book.size(); i++)
for (int j = 0; j < phone_book.size(); j++)
if (phone_book[j].find(phone_book[i]) == 0 && i != j)
return false;
return true;
}
string::find()
- string ํด๋์ค์ ๋ฉค๋ฒํจ์๋ก์, str.find("์ฐพ๋ ๋ฌธ์") ๋ก ์ฌ์ฉ
-
๋ฐํ๊ฐ์ ์ฐพ๋ ๋ฌธ์์ ์ฒซ๋ฒ์งธ ์ธ๋ฑ์ค๊ฐ
-
์ฐพ๋ ๋ฌธ์๊ฐ ์์ ๊ฒฝ์ฐ๋ string::npos๋ฅผ ๋ฆฌํดํ๋ค.
(npos๋ no position์ผ๋ก ์ฐ๋ ๊ธฐ๊ฐ ๋์ด)
'๐ Algorithm' ์นดํ ๊ณ ๋ฆฌ์ ๋ค๋ฅธ ๊ธ
[ํ๋ก๊ทธ๋๋จธ์ค] ๋ ๋งต๊ฒ (C++) (0) | 2020.12.24 |
---|---|
[ํ๋ก๊ทธ๋๋จธ์ค] K๋ฒ์งธ์ (C++) (0) | 2020.12.23 |
[ํ๋ก๊ทธ๋๋จธ์ค] ์์ฃผํ์ง ๋ชปํ ์ ์ (C++) (0) | 2020.12.18 |
C++ STL - ๋ฒกํฐ ๋ผ๋ฆฌ ์ฐ์ฐ (ํฉ์งํฉ, ์ฐจ์งํฉ, ๊ต์งํฉ, ํฉ๋ณ) (0) | 2020.12.18 |