😎 κ³΅λΆ€ν•˜λŠ” μ§•μ§•μ•ŒνŒŒμΉ΄λŠ” μ²˜μŒμ΄μ§€?

[BAEKJOON C++] 1292_μ‰½κ²Œ ν‘ΈλŠ” 문제 λ³Έλ¬Έ

πŸ¦₯ μ½”ν…Œ/BAEKJOON

[BAEKJOON C++] 1292_μ‰½κ²Œ ν‘ΈλŠ” 문제

μ§•μ§•μ•ŒνŒŒμΉ΄ 2023. 8. 3. 23:59
728x90
λ°˜μ‘ν˜•
λ™ν˜ΈλŠ” λ‚΄λ…„에 μ΄ˆλ“±ν•™κ΅λ₯Ό μž…ν•™ν•œλ‹€. 
κ·Έλž˜μ„œ λ™ν˜Έ μ–΄λ¨Έλ‹ˆλŠ” μˆ˜ν•™ μ„ ν–‰ ν•™μŠ΅μ„ μœ„ν•΄ μ‰½κ²Œ ν‘ΈλŠ” λ¬Έμ œλ₯Ό λ™ν˜Έμ—κ²Œ μ£Όμ—ˆλ‹€.

이 λ¬Έμ œλŠ” λ‹€μŒκ³Ό κ°™λ‹€. 1을 ν•œ λ²ˆ, 2λ₯Ό λ‘ λ²ˆ, 3을 μ„Έ λ²ˆ, 
이런 μ‹μœΌλ‘œ 1 2 2 3 3 3 4 4 4 4 5 .. μ΄λŸ¬ν•œ μˆ˜μ—΄μ„ λ§Œλ“€κ³  
μ–΄λŠ μΌμ •ν•œ κ΅¬κ°„을 μ£Όλ©΄ κ·Έ κ΅¬κ°„μ˜ ν•©μ„ κ΅¬ν•˜λŠ” κ²ƒμ΄λ‹€.

ν•˜μ§€λ§Œ λ™ν˜ΈλŠ” ν˜„μž¬ λ” μ–΄λ €μš΄ λ¬Έμ œλ₯Ό ν‘ΈλŠλΌ λ°”μ˜κΈ°μ— μš°λ¦¬κ°€ λ™ν˜Έλ₯Ό λ„μ™€μ£Όμž.

μž…λ ₯
첫째 μ€„에 κ΅¬κ°„μ˜ μ‹œμž‘κ³Ό λμ„ λ‚˜νƒ€λ‚΄λŠ” μ •μˆ˜ A, B(1 ≤ A ≤ B ≤ 1,000)
즉, μˆ˜μ—΄μ—μ„œ A번째 μˆ«μžλΆ€ν„° B번째 μˆ«μžκΉŒμ§€ ν•©μ„ κ΅¬ν•˜λ©΄ λœλ‹€.

좜λ ₯
첫 μ€„에 κ΅¬κ°„에 μ†ν•˜λŠ” μˆ«μžμ˜ ν•©μ„ μΆœλ ₯ν•œλ‹€.
// [1292] μ‰½κ²Œ ν‘ΈλŠ” 문제

/*
λ™ν˜ΈλŠ” 내년에 μ΄ˆλ“±ν•™κ΅λ₯Ό μž…ν•™ν•œλ‹€. 
κ·Έλž˜μ„œ λ™ν˜Έ μ–΄λ¨Έλ‹ˆλŠ” μˆ˜ν•™ μ„ ν–‰ ν•™μŠ΅μ„ μœ„ν•΄ μ‰½κ²Œ ν‘ΈλŠ” 문제λ₯Ό λ™ν˜Έμ—κ²Œ μ£Όμ—ˆλ‹€.

이 λ¬Έμ œλŠ” λ‹€μŒκ³Ό κ°™λ‹€. 1을 ν•œ 번, 2λ₯Ό 두 번, 3을 μ„Έ 번, 
이런 μ‹μœΌλ‘œ 1 2 2 3 3 3 4 4 4 4 5 .. μ΄λŸ¬ν•œ μˆ˜μ—΄μ„ λ§Œλ“€κ³  
μ–΄λŠ μΌμ •ν•œ ꡬ간을 μ£Όλ©΄ κ·Έ κ΅¬κ°„μ˜ 합을 κ΅¬ν•˜λŠ” 것이닀.

ν•˜μ§€λ§Œ λ™ν˜ΈλŠ” ν˜„μž¬ 더 μ–΄λ €μš΄ 문제λ₯Ό ν‘ΈλŠλΌ λ°”μ˜κΈ°μ— μš°λ¦¬κ°€ λ™ν˜Έλ₯Ό λ„μ™€μ£Όμž.

μž…λ ₯
첫째 쀄에 κ΅¬κ°„μ˜ μ‹œμž‘κ³Ό 끝을 λ‚˜νƒ€λ‚΄λŠ” μ •μˆ˜ A, B(1 ≤ A ≤ B ≤ 1,000)
즉, μˆ˜μ—΄μ—μ„œ A번째 μˆ«μžλΆ€ν„° B번째 μˆ«μžκΉŒμ§€ 합을 κ΅¬ν•˜λ©΄ λœλ‹€.

좜λ ₯
첫 쀄에 ꡬ간에 μ†ν•˜λŠ” 숫자의 합을 좜λ ₯ν•œλ‹€.
*/

#define _CRT_SECURE_NO_WARNINGS
// ν‘œμ€€ μŠ€νŠΈλ¦Όμ—μ„œ 읽기 및 μ“°κΈ°λ₯Ό μ œμ–΄ν•˜λŠ” 개체λ₯Ό μ„ μ–Έ
#include <iostream>
#include <algorithm>    // find
#include <string>
#include <cmath>        // abs
#include <vector>
#include <queue>
using namespace std;

int main() {
	// κ΅¬κ°„μ˜ μ‹œμž‘κ³Ό 끝을 λ‚˜νƒ€λ‚΄λŠ” μ •μˆ˜ A, B
	int A, B;
	cin >> A >> B;
	int count = 0, sum = 0, a[1000];

	for (int i = 1; i <= 1000; i++) {
		for (int j = 0; j < i && count < 1000; j++) {
			a[count++] = i;
		}
	}

	for (int i = A - 1; i < B; i++) {
		sum += a[i];
	}
	cout << sum;
    return 0;
}

728x90
λ°˜μ‘ν˜•
Comments