γ€ŒβŒ¨οΈα΄„s」PS/λ°±μ€€_μˆ˜ν•™&κ΅¬ν˜„

[Baekjoon/λ°±μ€€][11382][C/C++] 꼬마 μ •λ―Ό

λ£¨λ°€π•ƒπ•¦π•„π•šπ•£ 2023. 5. 2. 00:12
728x90
λ°˜μ‘ν˜•
γ€Žλͺ©μ°¨γ€
0. κ°œμš”

1. 문제
2. 풀이
3. μ½”λ“œ

0. κ°œμš”

μˆ˜ν•™, κ΅¬ν˜„, 사칙연산 문제. μ •μˆ˜ μžλ£Œν˜•μ˜ ν‘œν˜„ λ²”μœ„λ₯Ό μ•Œκ³  μžˆλ‹€λ©΄, μ‰½κ²Œ ν’€ 수 μžˆλ‹€.

1. 문제

https://www.acmicpc.net/problem/11382

 

11382번: 꼬마 μ •λ―Ό

첫 번째 쀄에 A, B, C (1 ≤ A, B, C ≤ 1012)이 곡백을 사이에 두고 주어진닀.

www.acmicpc.net

[문제]

꼬마 μ •λ―Όμ΄λŠ” 이제 A + B μ •λ„λŠ” μ‰½κ²Œ 계산할 수 μžˆλ‹€. 이제 A + B + Cλ₯Ό 계산할 차둀이닀!

[μž…λ ₯]

첫 번째 쀄에 A, B, C (1 ≤ A, B, C ≤ 1012)이 곡백을 사이에 두고 주어진닀.

[좜λ ₯]

A+B+C의 값을 좜λ ₯ν•œλ‹€.

[예제 μž…λ ₯ 1]

77 77 7777

[예제 좜λ ₯ 1]

7931
λ°˜μ‘ν˜•

2. 풀이

int μžλ£Œν˜•μ˜ ν‘œν˜„λ²”μœ„λŠ” 4byte = 32bit = $2^{32}$ 이고, long μžλ£Œν˜•μ˜ ν‘œν˜„λ²”μœ„λŠ” 8byte = 64bit = $2^{64}$ 이닀.

10μ§„μˆ˜μ™€ 2μ§„μˆ˜ μ‚¬μ΄μ˜ 상관관계 μ‚΄νŽ΄λ³΄λ©΄, $10^3 =  2^{10} = 1000$ 이라 λ³Ό 수 μžˆλ‹€.

(μ„œλ‘œ μ •ν™•νžˆ μΌμΉ˜ν•˜λŠ” 값은 μ•„λ‹ˆμ§€λ§Œ, νŽΈμ˜μƒ $=$ 기호λ₯Ό μ‚¬μš©ν•˜μ˜€λ‹€.)

 

주어진 μž…λ ₯값은 $10^{12} = 2^{40}$ μ΄ν•˜μ˜ κ°’μ΄λ―€λ‘œ, int μžλ£Œν˜•μ˜ ν‘œν˜„λ²”μœ„λ₯Ό λ„˜μ–΄μ„ λ‹€.

λ”°λΌμ„œ, int λŒ€μ‹  long μžλ£Œν˜•μ„ μ‚¬μš©ν•˜μ—¬ λ§μ…ˆμ—°μ‚°μ„ μ§„ν–‰ν•˜μ—¬μ•Ό ν•œλ‹€.

3. μ½”λ“œ

#include <iostream>
using namespace std;

int main(int argc, char* argv[]) {
	/* Faster */
	ios::sync_with_stdio(0);
	cin.tie(0); cout.tie(0);

	/* Input */
	long a, b, c; cin >> a >> b >> c;

	/* Output */
	cout << a + b + c;

	/* Return */
	return 0;
}

/* 10의 12승 = μ•½ 2의 40승. λ”°λΌμ„œ, int둜 ν‘œν˜„ν•  수 μžˆλŠ” λ²”μœ„λ₯Ό λ„˜μ–΄μ„ λ‹€. */
728x90
λ°˜μ‘ν˜•