Дан набор различных натуральных чисел. Будем называть число "простым для заданного набора", если число не делится ни на одно из чисел набора, кроме самого себя.
Входные данные
Во входном файле в первой строке содержится целое число N (1 ≤ N ≤ 100) – количество чисел в наборе. Во второй строке файла содержатся N различных целых чисел от 1 до 1000000, разделенных пробелами.
Выходные данные
В выходной файл вывести "простые для заданного набора" числа, разделяя числа одним пробелом. Числа выводятся в том порядке, в котором они шли во входном файле.
#include <iostream> #include <math.h> #include <stdlib.h> using namespace std; int main() { __int64 i,s=0,a[101],q[101],n,j,k=0,b,m=0; cin>>n; for (i=0;i<n;i++) cin>>a[i]; for (i=0;i<n;i++) { for (j=0;j<n;j++) { if (a[i]%a[j]==0) { k++; } } if (k==1) { q[m]=a[i]; s++; m=m+1; } k=0; } for( m=0;m<s-1 ;m++) cout<<q[m]<<" "; cout<<q[s-1]<<endl; return 0; }
Есть решение которого нет на сайте? Пиши admin@devexe.top