Pagini recente » Cod sursa (job #3330222) | Cod sursa (job #3343277) | Cod sursa (job #3350953) | Cod sursa (job #3336157) | Cod sursa (job #3303022)
#include <iostream>
using namespace std;
//ifstream cin("submultimiinterval.in");
//ofstream cout("submultimiinterval.out");
int n,v[12],x[12];
void afis(int k)
{
for(int i=1; i<=k ; ++i)
cout << x[i] << " ";
cout << '\n';
}
bool cmmdc(int a, int b)
{
while(b != 0)
{
int r = a % b;
a = b;
b = r;
}
if(a==1)return true;
else return false;
}
bool valid(int k)
{
if(k == 1)
return true;
if((x[k] > x[k-1])&&(cmmdc(x[k],x[k-1])&&cmmdc(x[k],x[k+1])))
return true;
return false;
}
void BACK(int k)
{
for(int i=1; i<=n; ++i)
{
x[k]=i;
if(valid(k))
{
afis(k);
BACK(k+1);
}
}
}
int main()
{
cin>>n;
for(int i=1; i<=n; i++)cin>>v[i];
BACK(1);
}