Решение задачи Замок с Acmp

С пояснением   Просмотров: 69


Замок состоит из K уровней. Каждый уровень - это правильный N-угольник, угол которого совпадает с углом предыдущего. На сторонах первого уровня находится по две комнаты (в углах), на сторонах каждого следующего - на одну больше. Сколько в замке комнат?


Код

#include <bits/stdc++.h>

using namespace std;

int main()
{
    long long n, k, result;
    cin >> n >> k;
    result = 1 + (n - 1) * k;
    for(int i = 0; i < k; ++i){
        result += i * (n - 2);
    }
    cout << result;
    return 0;
}

         

Администратор Photo Автор: Администратор


Код

n, k = map(int, input().split())
result = 1 + (n - 1) * k
for i in range(k):
    result += i * (n - 2)
print(result)

         

Администратор Photo Автор: Администратор


При \( n = k = 1000000 \) на первом уровне получится миллион комнат, не говоря об остальных 999999 уровнях. Поэтому нужно будет использовать \( long \, \, long \)


Комментарии

Чтобы написать комментарии вам нужно войти в систему или зарегистрироваться