๐Ÿ˜Ž ๊ณต๋ถ€ํ•˜๋Š” ์ง•์ง•์•ŒํŒŒ์นด๋Š” ์ฒ˜์Œ์ด์ง€?

[BAEKJOON C++] 1357_๋’ค์ง‘ํžŒ ๋ง์…ˆ ๋ณธ๋ฌธ

๐Ÿฆฅ ์ฝ”ํ…Œ/BAEKJOON

[BAEKJOON C++] 1357_๋’ค์ง‘ํžŒ ๋ง์…ˆ

์ง•์ง•์•ŒํŒŒ์นด 2023. 8. 15. 01:02
728x90
๋ฐ˜์‘ํ˜•
์–ด๋–ค ์ˆ˜ X๊ฐ€ ์ฃผ์–ด์กŒ์„ ๋•Œ, X์˜ ๋ชจ๋“  ์ž๋ฆฌ์ˆ˜๊ฐ€ ์—ญ์ˆœ์ด ๋œ ์ˆ˜๋ฅผ ์–ป์„ ์ˆ˜ ์žˆ๋‹ค. 
Rev(X)๋ฅผ X์˜ ๋ชจ๋“  ์ž๋ฆฌ์ˆ˜๋ฅผ ์—ญ์ˆœ์œผ๋กœ ๋งŒ๋“œ๋Š” ํ•จ์ˆ˜๋ผ๊ณ  ํ•˜์ž. 
์˜ˆ๋ฅผ ๋“ค์–ด, X=123์ผ ๋•Œ, Rev(X) = 321์ด๋‹ค. ๊ทธ๋ฆฌ๊ณ , X=100์ผ ๋•Œ, Rev(X) = 1์ด๋‹ค.

๋‘ ์–‘์˜ ์ •์ˆ˜ X์™€ Y๊ฐ€ ์ฃผ์–ด์กŒ์„ ๋•Œ, Rev(Rev(X) + Rev(Y))๋ฅผ ๊ตฌํ•˜๋Š” ํ”„๋กœ๊ทธ๋žจ์„ ์ž‘์„ฑํ•˜์‹œ์˜ค

์ž…๋ ฅ
์ฒซ์งธ ์ค„์— ์ˆ˜ X์™€ Y๊ฐ€ ์ฃผ์–ด์ง„๋‹ค. X์™€ Y๋Š” 1,000๋ณด๋‹ค ์ž‘๊ฑฐ๋‚˜ ๊ฐ™์€ ์ž์—ฐ์ˆ˜์ด๋‹ค.

์ถœ๋ ฅ
์ฒซ์งธ ์ค„์— ๋ฌธ์ œ์˜ ์ •๋‹ต์„ ์ถœ๋ ฅํ•œ๋‹ค.
// [1357] ๋’ค์ง‘ํžŒ ๋ง์…ˆ 

/*
์–ด๋–ค ์ˆ˜ X๊ฐ€ ์ฃผ์–ด์กŒ์„ ๋•Œ, X์˜ ๋ชจ๋“  ์ž๋ฆฌ์ˆ˜๊ฐ€ ์—ญ์ˆœ์ด ๋œ ์ˆ˜๋ฅผ ์–ป์„ ์ˆ˜ ์žˆ๋‹ค. 
Rev(X)๋ฅผ X์˜ ๋ชจ๋“  ์ž๋ฆฌ์ˆ˜๋ฅผ ์—ญ์ˆœ์œผ๋กœ ๋งŒ๋“œ๋Š” ํ•จ์ˆ˜๋ผ๊ณ  ํ•˜์ž. 
์˜ˆ๋ฅผ ๋“ค์–ด, X=123์ผ ๋•Œ, Rev(X) = 321์ด๋‹ค. ๊ทธ๋ฆฌ๊ณ , X=100์ผ ๋•Œ, Rev(X) = 1์ด๋‹ค.

๋‘ ์–‘์˜ ์ •์ˆ˜ X์™€ Y๊ฐ€ ์ฃผ์–ด์กŒ์„ ๋•Œ, Rev(Rev(X) + Rev(Y))๋ฅผ ๊ตฌํ•˜๋Š” ํ”„๋กœ๊ทธ๋žจ์„ ์ž‘์„ฑํ•˜์‹œ์˜ค

์ž…๋ ฅ
์ฒซ์งธ ์ค„์— ์ˆ˜ X์™€ Y๊ฐ€ ์ฃผ์–ด์ง„๋‹ค. X์™€ Y๋Š” 1,000๋ณด๋‹ค ์ž‘๊ฑฐ๋‚˜ ๊ฐ™์€ ์ž์—ฐ์ˆ˜์ด๋‹ค.

์ถœ๋ ฅ
์ฒซ์งธ ์ค„์— ๋ฌธ์ œ์˜ ์ •๋‹ต์„ ์ถœ๋ ฅํ•œ๋‹ค.
*/

#define _CRT_SECURE_NO_WARNINGS
// ํ‘œ์ค€ ์ŠคํŠธ๋ฆผ์—์„œ ์ฝ๊ธฐ ๋ฐ ์“ฐ๊ธฐ๋ฅผ ์ œ์–ดํ•˜๋Š” ๊ฐœ์ฒด๋ฅผ ์„ ์–ธ
#include <iostream>
#include <algorithm>    // find
#include <string>
#include <cmath>        // abs
#include <vector>
#include <queue>
using namespace std;

int main() {
	int x, y;
	int sum;
	string a;
	string b;
	string result;

	cin >> a >> b;

	// ์ˆ˜ X์™€ Y ๋ฅผ reverse
	reverse(a.begin(), a.end());
	reverse(b.begin(), b.end());

	// string ์„ int ๋กœ ๋ณ€ํ™˜
	x = stoi(a);
	y = stoi(b);

	sum = x + y;

	// ํ•ฉํ•œ๊ฑธ ๋‹ค์‹œ reverse
	result = to_string(sum);
	reverse(result.begin(), result.end());

	cout << stoi(result) << endl;
    return 0;
}

728x90
๋ฐ˜์‘ํ˜•
Comments