🧩 Algorithm/[BOJ] Bronze

BOJ 2908번 : μƒμˆ˜ (C++/Python/Bronze 2)

devCloud 2022. 8. 7. 01:10
 

2908번: μƒμˆ˜

μƒκ·Όμ΄μ˜ 동생 μƒμˆ˜λŠ” μˆ˜ν•™μ„ 정말 λͺ»ν•œλ‹€. μƒμˆ˜λŠ” 숫자λ₯Ό μ½λŠ”λ° λ¬Έμ œκ°€ μžˆλ‹€. μ΄λ ‡κ²Œ μˆ˜ν•™μ„ λͺ»ν•˜λŠ” μƒμˆ˜λ₯Ό μœ„ν•΄μ„œ μƒκ·Όμ΄λŠ” 수의 크기λ₯Ό λΉ„κ΅ν•˜λŠ” 문제λ₯Ό λ‚΄μ£Όμ—ˆλ‹€. μƒκ·Όμ΄λŠ” μ„Έ 자리 수 두

www.acmicpc.net

문제

μƒκ·Όμ΄μ˜ 동생 μƒμˆ˜λŠ” μˆ˜ν•™μ„ 정말 λͺ»ν•œλ‹€. μƒμˆ˜λŠ” 숫자λ₯Ό μ½λŠ”λ° λ¬Έμ œκ°€ μžˆλ‹€. μ΄λ ‡κ²Œ μˆ˜ν•™μ„ λͺ»ν•˜λŠ” μƒμˆ˜λ₯Ό μœ„ν•΄μ„œ μƒκ·Όμ΄λŠ” 수의 크기λ₯Ό λΉ„κ΅ν•˜λŠ” 문제λ₯Ό λ‚΄μ£Όμ—ˆλ‹€. μƒκ·Όμ΄λŠ” μ„Έ 자리 수 두 개λ₯Ό μΉ νŒμ— μ¨μ£Όμ—ˆλ‹€. κ·Έ λ‹€μŒμ— 크기가 큰 수λ₯Ό 말해보라고 ν–ˆλ‹€.

μƒμˆ˜λŠ” 수λ₯Ό λ‹€λ₯Έ μ‚¬λžŒκ³Ό λ‹€λ₯΄κ²Œ 거꾸둜 μ½λŠ”λ‹€. 예λ₯Ό λ“€μ–΄, 734와 893을 μΉ νŒμ— μ μ—ˆλ‹€λ©΄, μƒμˆ˜λŠ” 이 수λ₯Ό 437κ³Ό 398둜 μ½λŠ”λ‹€. λ”°λΌμ„œ, μƒμˆ˜λŠ” 두 μˆ˜μ€‘ 큰 수인 437을 큰 수라고 말할 것이닀.

두 μˆ˜κ°€ μ£Όμ–΄μ‘Œμ„ λ•Œ, μƒμˆ˜μ˜ λŒ€λ‹΅μ„ 좜λ ₯ν•˜λŠ” ν”„λ‘œκ·Έλž¨μ„ μž‘μ„±ν•˜μ‹œμ˜€.

 

μž…λ ₯

첫째 쀄에 상근이가 μΉ νŒμ— 적은 두 수 A와 Bκ°€ μ£Όμ–΄μ§„λ‹€. 두 μˆ˜λŠ” κ°™μ§€ μ•Šμ€ μ„Έ 자리 수이며, 0이 ν¬ν•¨λ˜μ–΄ μžˆμ§€ μ•Šλ‹€.

 

좜λ ₯

첫째 쀄에 μƒμˆ˜μ˜ λŒ€λ‹΅μ„ 좜λ ₯ν•œλ‹€.


예제 μž…λ ₯

221 231

예제 좜λ ₯

132

문제 풀이

c++

● to_string() : 숫자 νƒ€μž… 데이터λ₯Ό 문자 νƒ€μž… λ°μ΄ν„°λ‘œ λ³€ν™˜ν•˜λ„λ‘ ν•΄μ€€λ‹€.

● reverse(μ‹œμž‘ 반볡자,μ’…λ£Œ 반볡자) : λ¬Έμžμ—΄μ„ 거꾸둜 λ’€μ§‘λŠ”λ‹€.

● atoi() : char to int : λ¬Έμžμ—΄μ„ μ •μˆ˜ νƒ€μž…μœΌλ‘œ λ³€ν™˜ν•œλ‹€.

Solution

C++

#include <iostream>
#include <algorithm> //reverse()λ₯Ό μ“°κΈ° μœ„ν•œ 헀더
using namespace std;

int rev(int n){
    string s = to_string(n);
	reverse(s.begin(), s.end());
	return atoi(s.c_str());
}
int main() {
    int A, B;
    cin >> A >> B;
    A = rev(A);
    B = rev(B);
    if(A > B)
       cout << A;
    else
       cout << B;
    return 0;
}

Python

a, b = map(int,input().split())
a = int(str(a)[::-1])
b = int(str(b)[::-1])
if(a > b): print(a)
else: print(b)