๐ ๋ฌธ์ ๋งํฌ
https://www.acmicpc.net/problem/11655
โ๐ป ๋ฌธ์ ์ค๋ช
๐๐ปโ๏ธ ๋ด ํ์ด
๊ณต๋ฐฑ์ด ์๋ ๋ฌธ์์ด์ ์ ๋ ฅ ๋ฐ์์ผ ํ๋ getline()ํจ์๋ฅผ ์ฌ์ฉํ๋ฉด ๋๋ค.
[ getlineํจ์ ์ฌ์ฉ ์์ ]
#include <iostream>
#include <string>
using namespace std;
int main()
{
string s;
getline(cin, s);
cout << s << "\n";
}
๊ทธ๋ฆฌ๊ณ ROT13์ ๊ธฐ๋ณธ ๋ฌธ์์์ +13์ ํ ๊ฐ์ผ๋ก ์ํธํํด์ฃผ๋ ์๊ณ ๋ฆฌ์ฆ์ผ๋ก, ์ ๋ ฅ ๋ฐ์ ๋ฌธ์์ด๋ค์ +13์ผ๋ก ์ํธํํด์ ๋ฐํํด์ฃผ๋ฉด ๋๋ค.
๋ง์ง๋ง์ผ๋ก ์ฃผ์ํ ์ ์ ๋๋ฌธ์์ ์๋ฌธ์๋ฅผ ๋ถ๋ฅํ์ฌ ์ํธํํด์ค์ผ ํ๋ค๋ ๊ฒ๊ณผ +13 ํ์ ๋ ํด๋น ๋๋ฌธ์, ์๋ฌธ์ ์์คํค์ฝ๋ ๋ฒ์๋ฅผ ๋์ด์๋ฉด -26์ ํด์ค์ ๋ค์ ๋ฒ์ ์์์ ์ํธํ๋ ์ ์๋๋ก ํด์ค์ผ ํ๋ค. (A-65๋ถํฐ, a-97๋ถํฐ)
๐ค ์ฝ๋
#include <iostream>
#include <string>
using namespace std;
int main()
{
string str;
getline(cin, str);
for (int i = 0; i < str.size(); i++)
{
if (str[i] >= 65 && str[i] < 97)
{
if (str[i] + 13 > 90)
{
str[i] -= 13; // str[i] + 13 -26
}
else
str[i] += 13;
}
else if (str[i] >= 97 && str[i] < 123)
{
if (str[i] + 13 > 122)
{
str[i] -= 13;
}
else
str[i] += 13;
}
}
cout << str << "\n";
return 0;
}
'๊ฐ๋ฐ > PS' ์นดํ ๊ณ ๋ฆฌ์ ๋ค๋ฅธ ๊ธ
[๋ฐฑ์ค] ์์ด(2559), C++ (0) | 2024.11.13 |
---|---|
[๋ฐฑ์ค] ํ๊ตญ์ด ๊ทธ๋ฆฌ์ธ ๋ ์๋ฒ์ ์ ์ํ์ง(9996), C++ (0) | 2024.11.12 |
[๋ฐฑ์ค] ๋๊ตฌ ๊ฒฝ๊ธฐ(1159), C++ (0) | 2024.11.11 |
[๋ฐฑ์ค] ํฐ๋ฆฐ๋๋กฌ์ธ์ง ํ์ธํ๊ธฐ(10988), C++ (0) | 2024.11.11 |
[๋ฐฑ์ค] ํธ๋ญ์ฃผ์ฐจ(2979), C++ (0) | 2024.11.11 |