Advertisement
MatveyL

чё-то ч нодом

Nov 21st, 2017
100
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C++ 1.62 KB | None | 0 0
  1. #include <iostream>
  2. #include <vector>
  3. #include <fstream>
  4. #include <algorithm>
  5. #include <math.h>
  6.  
  7. using namespace std;
  8. int Nod(int a, int b)
  9. {
  10.     int t;
  11.     if (a<b) { t =a; a=b; b=t; }
  12.     while(b!=0) {
  13.         t = b;
  14.         b = a%b;
  15.         a = t;
  16.     }
  17.     return a;
  18. }
  19. int main() {
  20.     int n, m, ya= 0, tr= 0;
  21.     cin >> n ;
  22.     vector<int> vl;
  23.     vector<int> v;
  24.     vector<int> v1(n,0);
  25.     for(int i = 0; i < n; i++){
  26.         cin >> m;
  27.         vl.push_back(m);
  28.     }
  29.     for(int i = 0; i < n; i++){
  30.         ya = 0;
  31.         for(int j = 0; j < v.size(); j++){
  32.             if( vl[i] == v[j]){
  33.                 ya+=1;
  34.             }
  35.         }
  36.         if(ya == 0) {
  37.             v.push_back(vl[i]);
  38.         }
  39.     }
  40.     for(int i = 0; i < n; i++){
  41.         for(int j = 0; j < n; j++) {
  42.             if(i!= j) {
  43.                 ya = 0;
  44.                 m = Nod(v[i], v[j]);
  45.                 for (int k = 0; k < n; k++) {
  46.                     if (i != k and j != k and m == v[k]) {
  47.                         v1[k] = 1;
  48.                         ya += 1;
  49.                     }else{
  50.                         if(m == v[k]){
  51.                             ya += 1;
  52.                         }
  53.                     }
  54.  
  55.                 }
  56.                 if (ya == 0){
  57.                     cout<<-1;
  58.                     return 0;
  59.                 }
  60.             }
  61.         }
  62.  
  63.     }
  64.     for(int i = 0; i < n; i++){
  65.         if(v1[i] == 0){
  66.             tr+=1;
  67.         }
  68.     }
  69.     cout<<tr<<endl;
  70.     for(int i = 0; i < n; i++){
  71.         if(v1[i] == 0){
  72.             cout<<v[i]<<" ";
  73.         }
  74.     }
  75.  
  76.     return 0;
  77. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement