Решение задачи Не взаимно простое разбиение с Codeforces

Без пояснения   Просмотров: 42


Выясните можно ли разбить множество из первых n положительных целых чисел на два непустых дизъюнктных множества S1 и S2, таких что:

gcd(sum(S1),sum(S2))>1
Где sum(S) обозначает сумму всех элементов множества S, а gcd обозначает наибольший общий делитель.

Каждое число от 1 до n должно присутствовать ровно в одном из множеств S1 и S2.

Код

#include <bits/stdc++.h>
using namespace std;
long long n;
int main(){
    cin >> n;
    if(n < 3){
        cout << "No";
        return 0;
    }
    cout<<"Yes\n1 " << n << endl << n - 1 << " ";
    for(int i = 1; i < n; ++i){
        cout << i << "  ";
    }
    
}

         

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



Комментарии

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