Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #include <iostream>
- using namespace std;
- int n,t[25],s,minim=200000000,m;
- bool v[25];
- void bk(int x)
- {
- int i=1;
- while(v[i])
- ++i;
- v[i]=1;
- for(int j=i+1;j<=n;++j)
- if(!v[j])
- {
- v[j] = 1;
- int mod;
- if(t[i]>t[j])
- mod=t[i]%t[j];
- else
- mod=t[j]%t[i];
- s+=mod;
- if(x==m)
- {
- if(s<minim)
- minim=s;
- }
- else
- bk(x+1);
- v[j]=0;
- s-=mod;
- }
- v[i]=0;
- }
- int main()
- {
- cin>>n;
- m=n/2;
- for(int i=1;i<=n;++i)
- cin>>t[i];
- bk(1);
- cout<<minim;
- return 0;
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement