Submitted solution with Run Time = 0.010
#include<iostream>
#include<vector>
using namespace std;
int main()
{
vector<int> nos;
int t,sum,i;
cin>>t;
while(t!=0)
{
nos.push_back(t);
cin>>t;
}
nos.push_back(0);
t=0;
sum=1;
cout<<"PERFECTION OUTPUT"<<endl;
while(nos[t]!=0)
{
if(nos[t] == 1)
{
cout<<" "<<nos[t]<<" ";
// printf("%5d ",nos[t]);
cout<<"DEFICIENT"<<endl;
t++;
}
else
{
for(i=2;i<nos[t];i++)
{
if(nos[t]%i==0)
{
sum=sum+i;
}
}
if(nos[t]/10==0)
cout<<" "<<nos[t]<<" ";
else if(nos[t]/100==0)
cout<<" "<<nos[t]<<" ";
else if(nos[t]/1000==0)
cout<<" "<<nos[t]<<" ";
else if(nos[t]/10000==0)
cout<<" "<<nos[t]<<" ";
else if(nos[t]/100000==0)
cout<<nos[t]<<" ";
// printf("%5d ",nos[t]);
if(sum==nos[t])
{
cout<<"PERFECT"<<endl;
}
else if(sum>nos[t])
{
cout<<"ABUNDANT"<<endl;
}
else if(sum<nos[t])
{
cout<<"DEFICIENT"<<endl;
}
sum=1;
t++;
}
}
cout<<"END OF OUTPUT"<<endl;
//system("pause");
return 0;
}
Comment for better algorithm.
Wednesday, February 6, 2008
Ecological Bin Packing : Problem No. 102
Submitted solution with Run Time = 0.310
#include<iostream>
#include<string>
#include<vector>
#include<cmath>
using namespace std;
int main()
{
int i,x[9],mini,t;
int mov[6];
vector<string> data;
while(cin>>t)
{
x[0]=t;
for(i=1;i<9;i++)
{
cin>>x[i];
}
// original is bgc
//bcg
mov[0]=x[3]+x[6]+x[2]+x[8]+x[1]+x[4];
data.push_back("BCG");
//bgc
mov[1]=x[3]+x[6]+x[1]+x[7]+x[2]+x[5];
data.push_back("BGC");
//cbg
mov[2]=x[5]+x[8]+x[0]+x[6]+x[1]+x[4];
data.push_back("CBG");
//cgb
mov[3]=x[8]+x[5]+x[1]+x[7]+x[0]+x[3];
data.push_back("CGB");
//gbc
mov[4]=x[4]+x[7]+x[0]+x[6]+x[2]+x[5];
data.push_back("GBC");
//gcb
mov[5]=x[4]+x[7]+x[2]+x[8]+x[0]+x[3];
data.push_back("GCB");
mini=mov[0];
for(i=0;i<6;i++)
mini=min(mini,mov[i]);
for(i=0;i<6;i++)
{
if(mov[i]==mini)
{
cout<<data[i]<<" "<<mov[i]<<endl;
break;
}
}
}
return 0;
}
Comment for better algorithm.
#include<iostream>
#include<string>
#include<vector>
#include<cmath>
using namespace std;
int main()
{
int i,x[9],mini,t;
int mov[6];
vector<string> data;
while(cin>>t)
{
x[0]=t;
for(i=1;i<9;i++)
{
cin>>x[i];
}
// original is bgc
//bcg
mov[0]=x[3]+x[6]+x[2]+x[8]+x[1]+x[4];
data.push_back("BCG");
//bgc
mov[1]=x[3]+x[6]+x[1]+x[7]+x[2]+x[5];
data.push_back("BGC");
//cbg
mov[2]=x[5]+x[8]+x[0]+x[6]+x[1]+x[4];
data.push_back("CBG");
//cgb
mov[3]=x[8]+x[5]+x[1]+x[7]+x[0]+x[3];
data.push_back("CGB");
//gbc
mov[4]=x[4]+x[7]+x[0]+x[6]+x[2]+x[5];
data.push_back("GBC");
//gcb
mov[5]=x[4]+x[7]+x[2]+x[8]+x[0]+x[3];
data.push_back("GCB");
mini=mov[0];
for(i=0;i<6;i++)
mini=min(mini,mov[i]);
for(i=0;i<6;i++)
{
if(mov[i]==mini)
{
cout<<data[i]<<" "<<mov[i]<<endl;
break;
}
}
}
return 0;
}
Comment for better algorithm.
Subscribe to:
Comments (Atom)