πŸ’  Cpp/[BOJ] λ‹¨κ³„λ³„λ‘œ 풀어보기

[BOJ][C++] λ°±μ€€ 15596번: μ •μˆ˜ N개의 ν•©

선달 2021. 9. 2. 08:26
λ°˜μ‘ν˜•

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

 

15596번: μ •μˆ˜ N개의 ν•©

C++17, Java 8, Python 3, C11, PyPy3, C99, C++98, C++11, C++14, Python 2, PyPy2, Go, C99 (Clang), C++98 (Clang), C++11 (Clang), C++14 (Clang), C11 (Clang), C++17 (Clang)

www.acmicpc.net

 

문제

μ •μˆ˜ nκ°œκ°€ μ£Όμ–΄μ‘Œμ„ λ•Œ, n개의 합을 κ΅¬ν•˜λŠ” ν•¨μˆ˜λ₯Ό μž‘μ„±ν•˜μ‹œμ˜€.

μž‘μ„±ν•΄μ•Ό ν•˜λŠ” ν•¨μˆ˜λŠ” λ‹€μŒκ³Ό κ°™λ‹€.

  • C, C11, C (Clang), C11 (Clang): long long sum(int *a, int n);
    • a: 합을 ꡬ해야 ν•˜λŠ” μ •μˆ˜ nκ°œκ°€ μ €μž₯λ˜μ–΄ μžˆλŠ” λ°°μ—΄ (0 ≤ a[i] ≤ 1,000,000, 1 ≤ n ≤ 3,000,000)
    • n: 합을 ꡬ해야 ν•˜λŠ” μ •μˆ˜μ˜ 개수
    • 리턴값: a에 ν¬ν•¨λ˜μ–΄ μžˆλŠ” μ •μˆ˜ n개의 ν•©
  • C++, C++11, C++14, C++17, C++ (Clang), C++11 (Clang), C++14 (Clang), C++17 (Clang): long long sum(std::vector<int> &a);
    • a: 합을 ꡬ해야 ν•˜λŠ” μ •μˆ˜ nκ°œκ°€ μ €μž₯λ˜μ–΄ μžˆλŠ” λ°°μ—΄ (0 ≤ a[i] ≤ 1,000,000, 1 ≤ n ≤ 3,000,000)
    • 리턴값: a에 ν¬ν•¨λ˜μ–΄ μžˆλŠ” μ •μˆ˜ n개의 ν•©
  • Python 2, Python 3, PyPy, PyPy3: def solve(a: list) -> int
    • a: 합을 ꡬ해야 ν•˜λŠ” μ •μˆ˜ nκ°œκ°€ μ €μž₯λ˜μ–΄ μžˆλŠ” 리슀트 (0 ≤ a[i] ≤ 1,000,000, 1 ≤ n ≤ 3,000,000)
    • 리턴값: a에 ν¬ν•¨λ˜μ–΄ μžˆλŠ” μ •μˆ˜ n개의 ν•© (μ •μˆ˜)
  • Java: long sum(int[] a); (클래슀 이름: Test)
    • a: 합을 ꡬ해야 ν•˜λŠ” μ •μˆ˜ nκ°œκ°€ μ €μž₯λ˜μ–΄ μžˆλŠ” λ°°μ—΄ (0 ≤ a[i] ≤ 1,000,000, 1 ≤ n ≤ 3,000,000)
    • 리턴값: a에 ν¬ν•¨λ˜μ–΄ μžˆλŠ” μ •μˆ˜ n개의 ν•©
  • Go: sum(a []int) int
    • a: 합을 ꡬ해야 ν•˜λŠ” μ •μˆ˜ nκ°œκ°€ μ €μž₯λ˜μ–΄ μžˆλŠ” λ°°μ—΄ (0 ≤ a[i] ≤ 1,000,000, 1 ≤ n ≤ 3,000,000)
    • 리턴값: a에 ν¬ν•¨λ˜μ–΄ μžˆλŠ” μ •μˆ˜ n개의 ν•©

 

풀이

λ¬Έμ œκ°€ μ €κ²Œ μ „λΆ€λ‹€... μž…λ ₯도 좜λ ₯도 μ•ˆμ£Όμ–΄μ‘Œλ‹€.....

μ²˜μŒμ— 이게 λ­” λ¬Έμ  κ°€ 였래 κ³ λ―Όν–ˆλŠ”λ° [제좜]을 λ¨Όμ € λˆŒλŸ¬λ³΄κ³ μ„œμ•Ό μ•Œμ•˜λ‹€.

μ½”λ“œλ₯Ό 쓰지도 μ•Šμ•˜λŠ”λ° μ½”λ“œκ°€ μžˆλ‹€.

이걸 쑰건에 맞게 μž‘μ„±ν•˜λ©΄ λ˜λŠ”κ±°μ˜€λ‹€. (괜히.. 헛고생을...πŸ₯Ί)

#include <vector>
long long sum(std::vector<int> &a) {
	long long ans = 0;
    for(int i=0; i<a.size(); i++){
        ans += a[i];
    }
	return ans;
}

 

λ°˜μ‘ν˜•