๋ฌธ์
์ค๋ฐ์ฌ : ๊ทธ๋ผ ๋ค์์ ์ด์ ์ง์ ํ ํฌ์ผ๋ชฌ ๋ง์คํฐ๊ฐ ๋๊ธฐ ์ํด ๋๊ฐ์ ์์ฑ์ํค๋๋ก ํ์ฌ๋ผ. ์ผ๋จ ๋ค๊ฐ ํ์ฌ ๊ฐ์ง๊ณ ์๋ ํฌ์ผ๋ชฌ ๋๊ฐ์์ ํฌ์ผ๋ชฌ์ ์ด๋ฆ์ ๋ณด๋ฉด ํฌ์ผ๋ชฌ์ ๋ฒํธ๋ฅผ ๋งํ๊ฑฐ๋, ํฌ์ผ๋ชฌ์ ๋ฒํธ๋ฅผ ๋ณด๋ฉด ํฌ์ผ๋ชฌ์ ์ด๋ฆ์ ๋งํ๋ ์ฐ์ต์ ํ๋๋ก ํ์ฌ๋ผ. ๋์ ์ํ์ ํต๊ณผํ๋ฉด, ๋ด๊ฐ ์๋ก ๋ง๋ ๋๊ฐ์ ์ฃผ๋๋ก ํ๊ฒ ๋ค.
์ ๋ ฅ
์ฒซ์งธ ์ค์๋ ๋๊ฐ์ ์๋ก๋์ด ์๋ ํฌ์ผ๋ชฌ์ ๊ฐ์ N์ด๋ ๋ด๊ฐ ๋ง์ถฐ์ผ ํ๋ ๋ฌธ์ ์ ๊ฐ์ M์ด ์ฃผ์ด์ ธ.
N๊ณผ M์ 1๋ณด๋ค ํฌ๊ฑฐ๋ ๊ฐ๊ณ , 100,000๋ณด๋ค ์๊ฑฐ๋ ๊ฐ์ ์์ฐ์์ผ
๋์งธ ์ค๋ถํฐ N๊ฐ์ ์ค์ ํฌ์ผ๋ชฌ์ ๋ฒํธ๊ฐ 1๋ฒ์ธ ํฌ์ผ๋ชฌ๋ถํฐ N๋ฒ์ ํด๋นํ๋ ํฌ์ผ๋ชฌ๊น์ง ํ ์ค์ ํ๋์ฉ ์ ๋ ฅ์ผ๋ก ๋ค์ด์. ํฌ์ผ๋ชฌ์ ์ด๋ฆ์ ๋ชจ๋ ์์ด๋ก๋ง ์ด๋ฃจ์ด์ ธ์๊ณ , ์ฒซ ๊ธ์๋ง ๋๋ฌธ์์ด๊ณ , ๋๋จธ์ง ๋ฌธ์๋ ์๋ฌธ์๋ก๋ง ์ด๋ฃจ์ด์ ธ ์์ด. ํฌ์ผ๋ชฌ ์ด๋ฆ์ ์ต๋ ๊ธธ์ด๋ 20์ด์ผ. ๊ทธ ๋ค์ ์ค๋ถํฐ ์ด M๊ฐ์ ์ค์ ๋ด๊ฐ ๋ง์ถฐ์ผํ๋ ๋ฌธ์ ๊ฐ ์ ๋ ฅ์ผ๋ก ๋ค์ด์. ๋ฌธ์ ๊ฐ ์ํ๋ฒณ์ผ๋ก๋ง ๋ค์ด์ค๋ฉด ํฌ์ผ๋ชฌ ๋ฒํธ๋ฅผ ๋งํด์ผ ํ๊ณ , ์ซ์๋ก๋ง ๋ค์ด์ค๋ฉด, ํฌ์ผ๋ชฌ ๋ฒํธ์ ํด๋นํ๋ ๋ฌธ์๋ฅผ ์ถ๋ ฅํด์ผํด. ์ ๋ ฅ์ผ๋ก ๋ค์ด์ค๋ ์ซ์๋ ๋ฐ๋์ 1๋ณด๋ค ํฌ๊ฑฐ๋ ๊ฐ๊ณ , N๋ณด๋ค ์๊ฑฐ๋ ๊ฐ๊ณ , ์ ๋ ฅ์ผ๋ก ๋ค์ด์ค๋ ๋ฌธ์๋ ๋ฐ๋์ ๋๊ฐ์ ์๋ ํฌ์ผ๋ชฌ์ ์ด๋ฆ๋ง ์ฃผ์ด์ ธ.
์ถ๋ ฅ
์ฒซ์งธ ์ค๋ถํฐ ์ฐจ๋ก๋๋ก M๊ฐ์ ์ค์ ๊ฐ๊ฐ์ ๋ฌธ์ ์ ๋ํ ๋ต์ ๋งํด์คฌ์ผ๋ฉด ์ข๊ฒ ์ด!!!. ์ ๋ ฅ์ผ๋ก ์ซ์๊ฐ ๋ค์ด์๋ค๋ฉด ๊ทธ ์ซ์์ ํด๋นํ๋ ํฌ์ผ๋ชฌ์ ์ด๋ฆ์, ๋ฌธ์๊ฐ ๋ค์ด์์ผ๋ฉด ๊ทธ ํฌ์ผ๋ชฌ์ ์ด๋ฆ์ ํด๋นํ๋ ๋ฒํธ๋ฅผ ์ถ๋ ฅํ๋ฉด ๋ผ. ๊ทธ๋ผ ๋กํ~
ํ์ด
๋ฌธ์ ์์ฒด๋ map์ ์ฌ์ฉํ๋ฉด ์ด๋ ต์ง ์๊ฒ ํ ์ ์์ผ๋ ์๊ฐ์ด๊ณผ์ ์ ์ํด์ผ ํ๋ค.
#include <iostream>
#include <map>
using namespace std;
int main(){
ios::sync_with_stdio(0);
cin.tie(0);
cout.tie(0);
int n, m;
string input;
map<string, int> name;
map<int, string> number;
cin >> n >> m;
// ํฌ์ผ๋ชฌ ๋ฒํธ : 1๋ฒ ~ n๋ฒ
for (int i=1; i<=n; i++){
cin >> input;
name[input] = i; // ์ด๋ฆ ๋๊ฐ์ ์ ์ฅ
number[i] = input; // ๋ฒํธ ๋๊ฐ์ ์ ์ฅ
}
while(m--){
cin >> input;
if (isdigit(input[0])) // ์ซ์๋ฉด ๋ฒํธ ๋๊ฐ ์ฐธ์กฐ
cout << number[stoi(input)] << "\n";
else
cout << name[input] << "\n";
}
}
'โจ Algorithm' ์นดํ ๊ณ ๋ฆฌ์ ๋ค๋ฅธ ๊ธ
[๋ฐฑ์ค/C++] 13458๋ฒ: ์ํ ๊ฐ๋ (0) | 2022.06.26 |
---|---|
[๋ฐฑ์ค/C++] 1316๋ฒ: ๊ทธ๋ฃน ๋จ์ด ์ฒด์ปค (0) | 2022.06.26 |
[๋ฐฑ์ค/C++] 14425๋ฒ : ๋ฌธ์์ด ์งํฉ (0) | 2021.09.12 |
[๋ฐฑ์ค/C++] 18870๋ฒ : ์ขํ ์์ถ (0) | 2021.09.12 |
[๋ฐฑ์ค/C++] 9375๋ฒ : ํจ์ ์ ์ ํ๋น (0) | 2021.09.12 |
๋๊ธ