๋ฐฑ์ค 10809๋ฒ ํ์ด
๋ฌธ์
๋ฌธ์ ์ดํด
๋ฌธ์์ด s๋ฅผ ๋ฐ์๋ค์์ ๊ฐ๊ฐ์ ๋ฌธ์๊ฐ ์ฒ์์ผ๋ก ๋ฑ์ฅํ๋ ์์น๋ฅผ ์ถ๋ ฅํ๊ณ , ๋ง์ฝ์ ์ํ๋ฒณ์ด ๋จ์ด์ ํฌํจ๋์ด ์์ง ์๋ค๋ฉด -1๋ฅผ ์ถ๋ ฅํ๋ฉด ๋๋๋ฌธ์ ์ด๋ค.
๊ฐ๋จํ๊ฒ ์๋ฅผ ๋ค์ด๋ณด์.
๋ฌธ์์ด s ๊ฐ "abc" ๋ผ๊ณ ๊ฐ์ ํ์๋, ์ถ๋ ฅ์
0 1 2 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1
์ด๋ ๊ฒ ๋๋ฉด ๋๋ค.
๋ฐ๋ก ๋ฌธ์ ๋ฅผ ํ์ด๋ณด์.
๋ฌธ์ ํ์ด
์ด๋ฐ ๋ฌธ์ ๋ ๋ฏธ๋ฆฌ ๋ฐฐ์ด์ -1๋ฅผ ๊ธฐ๋ณธ์ผ๋ก ๊น๊ณ ์์ํ๋๊ฒ ์ข๋ค.
์ํ๋ฒณ์ ์ด ๊ฐฏ์๊ฐ 26๊ฐ์ด๋ a๋ผ๋ ๋ฐฐ์ด์ 26ํฌ๊ธฐ๋ฅผ ์ฃผ๊ณ -1๋ก ์ด๊ธฐํํด์ค๋ค.
๊ทธ๋ค์, ๋ฌธ์์ด s๋ฅผ ์ ๋ ฅ๋ฐ์๋ค ๊ฐ๊ฐ์ ๋ฌธ์๋ฅผ ์ซ์๋ก ๋ฐ๊ฟ์ ๊ทธ ์๋ฆฟ์์ index์ ๊ฐ์ ๋ฃ์ด์ฃผ๋ฉด ๋๋ค.
๊ทธ๋ ๋ค๋ฉด ์ด๋ป๊ฒ ๋ฌธ์๋ฅผ ์ซ์ ์๋ฆฟ์๋ก ๋ฐ๊ฟ์์์๊น?
๋ฐ๋ก '0'์ ๋นผ์ค ๋ค์ 48์ ๋นผ์ฃผ๋ฉด ๋๋ค.
์ด์ ๋ ์์คํค ์ฝ๋์์ '0'์ ๋นผ๋ฉด ๋ฌธ์์ด์ด ์ซ์๊ฐ ๋๋๋ฐ, ์ํ๋ฒณ์ ์๋ฆฟ์๋ฅผ ๊ตฌํด์ผํ๊ธฐ ๋๋ฌธ์
48(A)๋ฅผ ์ถ๊ฐ๋ก ๋นผ์ฃผ๋ฉด ์๋ฆฟ์๊ฐ ๋์ค๊ฒ๋๋ค.
์ด์ ์ ์ ์ํ๋ฉฐ ๋ฌธ์ ๋ฅผ ํ์ด๋ณด์~!
์์ธํ๊ฑด ์๋ ํ์ด์ฝ๋๋ก ๋ณด์.
ํ์ด ์ฝ๋
#include<iostream>
using namespace std;
int main(){
ios_base::sync_with_stdio(false);
cin.tie(0);
string s;
int a[26] = {0, };
cin >> s;
for(int i = 0; i < 26; i++){
a[i] = -1;
}
for(int i = 0; i < s.length(); i++){
if(a[s[i] - '0' - 49] != -1)
continue;
a[s[i] - '0' - 49] = i;
// cout << s[i] - '0' - 49 << "๋ฒ์งธ ์ธ๋ฑ์ค์ " << i << "์
๋ ฅ";
// cout << "\n";
}
for(int i = 0; i < 26; i++){
cout << a[i] << " ";
}
return 0;
}
'๐ ์ฝ๋ฉ ํ ์คํธ' ์นดํ ๊ณ ๋ฆฌ์ ๋ค๋ฅธ ๊ธ
[๋ฐฑ์ค 2675] ๋ฌธ์์ด ๋ฐ๋ณต | C++ (0) | 2024.08.23 |
---|---|
[๋ฐฑ์ค 11720] ์ซ์์ ํฉ | C++ (0) | 2024.08.07 |
[๋ฐฑ์ค 11654] ์์คํค ์ฝ๋ | C++ (0) | 2024.07.31 |
[๋ฐฑ์ค 9086] ๋ฌธ์์ด | C++ (0) | 2024.07.25 |
[๋ฐฑ์ค 27866] ๋ฌธ์์ ๋ฌธ์์ด | C++ (2) | 2024.07.23 |