작성일 :

문제 링크

15295번 - Chanukah Challenge

설명

문제의 목표는 Chanukah 라는 유대인의 축제가 주어진 일 수 n 일 동안 지속된다고 가정할 때, 필요한 총 촛불의 개수를 구하는 것입니다.

문제의 조건에 따르면 촛불의 수는 각 날마다 해당 날짜(1, 2, 3, ..., n)와 shammas 촛불 1개가 추가 됩니다.

따라서, 각 날짜의 촛불의 수는 (날짜 + 1) 이며,

총 촛불의 수는 모든 날짜에 대해서 (날짜 + 1) 을 합한 값입니다.


즉, 총 촛불의 개수는 다음과 같이 계산됩니다.

총 촛불의 개수 = 1 + 2 + 3 + ... + n + n(shammas 촛불)

= n * (n + 1) / 2 + n


Code

[ C# ]

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
namespace Solution {
  class Program {
    static void Main(string[] args) {

      var p = int.Parse(Console.ReadLine()!);

      for (int i = 0; i < p; i++) {
        var input = Console.ReadLine()!.Split(' ');
        var k = int.Parse(input[0]);
        var n = int.Parse(input[1]);

        var candles = n + (n * (n + 1) / 2);
        Console.WriteLine($"{k} {candles}");
      }

    }
  }
}



[ C++ ]

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
#include <bits/stdc++.h>

using namespace std;

int main() {
  ios::sync_with_stdio(false);
  cin.tie(nullptr);

  int p; cin >> p;

  for (int i = 0; i < p; i++) {
    int k, n; cin >> k >> n;

    int candles = n + (n * (n + 1) / 2);
    cout << k << " " << candles << "\n";
  }

  return 0;
}