๐Ÿ’  Cpp/[BOJ] ๋‹จ๊ณ„๋ณ„๋กœ ํ’€์–ด๋ณด๊ธฐ

[BOJ][C++] ๋ฐฑ์ค€ 2745๋ฒˆ: ์ง„๋ฒ• ๋ณ€ํ™˜ (Bronze II)

์„ ๋‹ฌ 2024. 12. 25. 01:58
๋ฐ˜์‘ํ˜•

๋ฌธ์ œ

B์ง„๋ฒ• ์ˆ˜ N์ด ์ฃผ์–ด์ง„๋‹ค. ์ด ์ˆ˜๋ฅผ 10์ง„๋ฒ•์œผ๋กœ ๋ฐ”๊ฟ” ์ถœ๋ ฅํ•˜๋Š” ํ”„๋กœ๊ทธ๋žจ์„ ์ž‘์„ฑํ•˜์‹œ์˜ค.
10์ง„๋ฒ•์„ ๋„˜์–ด๊ฐ€๋Š” ์ง„๋ฒ•์€ ์ˆซ์ž๋กœ ํ‘œ์‹œํ•  ์ˆ˜ ์—†๋Š” ์ž๋ฆฌ๊ฐ€ ์žˆ๋‹ค. ์ด๋Ÿฐ ๊ฒฝ์šฐ์—๋Š” ๋‹ค์Œ๊ณผ ๊ฐ™์ด ์•ŒํŒŒ๋ฒณ ๋Œ€๋ฌธ์ž๋ฅผ ์‚ฌ์šฉํ•œ๋‹ค.
A: 10, B: 11, ..., F: 15, ..., Y: 34, Z: 35

์ž…๋ ฅ

์ฒซ์งธ ์ค„์— N๊ณผ B๊ฐ€ ์ฃผ์–ด์ง„๋‹ค. (2 ≤ B ≤ 36)
B์ง„๋ฒ• ์ˆ˜ N์„ 10์ง„๋ฒ•์œผ๋กœ ๋ฐ”๊พธ๋ฉด, ํ•ญ์ƒ 10์–ต๋ณด๋‹ค ์ž‘๊ฑฐ๋‚˜ ๊ฐ™๋‹ค.

์ถœ๋ ฅ

์ฒซ์งธ ์ค„์— B์ง„๋ฒ• ์ˆ˜ N์„ 10์ง„๋ฒ•์œผ๋กœ ์ถœ๋ ฅํ•œ๋‹ค.

 

ํ’€์ด

// ํ’€์ด : https://whkakrkr.tistory.com

#include <iostream>
#include <vector>

using namespace std;

int main() {
    ios_base::sync_with_stdio(false);
	cout.tie(NULL);
	cin.tie(NULL);
	
	string n;
	int b;
	cin >> n >> b;
	
	int ans = 0;
	int length = n.size();
	int cur = 1;
	for(int i=length-1; i>=0; i--) {
	    char c = n[i];
	    
	    int value;
	    if('A'<=c && c<='Z') {
	        value = c-'A'+10;
	    } else {
	        value = c-'0';
	    }
	    
	    ans += cur*value;
	    cur *= b;
	}
	
	cout << ans;
	
    return 0;
}
๋ฐ˜์‘ํ˜•