Using Namespace

You might also like

Download as rtf, pdf, or txt
Download as rtf, pdf, or txt
You are on page 1of 7

704

#include <fstream>
using namespace std;
ifstream f("date.in");
ofstream g("date.out");
struct persoane
{
char nume[200],sex;
} pers[10];
int p,n;
int st[10],k;
void init (int k)
{
st[k]=0;
}
int succesor (int k)
{
if (k<p)
{
st[k]++;
return 1;
}
return 0;
}
int solutie (int k)
{
return k==p;
}
int valid (int k)
{
int OKb=0, OKf=0;
for (int i=1;i<=k;i++)
if (pers[st[i]].sex=='b') OKb=1;
else if (pers[st[i]].sex=='f') OKf=1;
if (OKb && OKf) return 1;
else return 0;
}
void tipar (int k)
{
for (int i=1;i<=k;i++)
g<<pers[st[i]].nume<<" + ";
g<<"\n";
}

void back (int k)


{
init (k);
while (succesor(k))
if (valid(k))
if (solutie(k))
tipar (k);
else back(k+1);
}
int main ()
{
f>>n>>p;
for (int i=1;i<=n;i++)
{
f.get ();
f.get (pers[i].nume,200);
f>>pers[i].sex;
}
back (1);
}
713
#include <fstream>
using namespace std;
ifstream f("date.in");
ofstream g("date.out");
long int n,maxim;
int p,nr[11];
int crescator (int v[11],int n)
{
for (int i=1;i<=n;i++)
if (v[i]>=v[i+1])
return 0;
return 1;
}
//bt
int st[10],k;
void init (int k)
{
st[k]=0;
}
int succesor (int k)
{
if (st[k]<p)
{

st[k]++;
return 1;
}
return 0;
}
int solutie (int k)
{
return k==p;
}
int valid (int k)
{
if (!crescator (st,p))
return 0;
for (int i=1;i<=k;i++)
if (nr[st[i]]==nr[st[k]]) return 0;
return 1;
}
void tipar (int k)
{
int numar=0;
for (int i=1;i<=p;i++)
numar=numar*10+nr[st[i]];
if (numar>maxim) maxim = numar;
}
void back (int k)
{
init (k);
while (succesor(k))
if (valid(k))
if (solutie(k))
tipar (k);
else back(k+1);
g<<maxim;
}
int main ()
{
f>>n>>p; p=n-p; int k=0;
while (n)
{
nr[++k]=n%10;
n/=10;
}
for (int i=1;i<=k/2;i++)
{
int aux=nr[i];
nr[i]=nr[k-i+1];

nr[k-i+1]=aux;
}
back (1);
}
799
#include <fstream>
using namespace std;
ifstream f("date.in");
ofstream g("date.out");
struct persoane {
char nume[40];
int nr_spec,age;
} pers[20],aux;
int main ()
{
int n,i,j;
f>>n;
for (i=1;i<=n;i++)
{
f.get ();
f.get(pers[i].nume,40);
f>>pers[i].nr_spec>>pers[i].age;
}
for (i=1;i<=n;i++)
for (j=i+1;j<=n;j++)
if (pers[i].nr_spec<pers[i].nr_spec)
{
aux=pers[i];
pers[i]=pers[j];
pers[j]=aux;
}
else if (pers[i].nr_spec==pers[i].nr_spec)
if (pers[i].age>pers[j].age)
{
aux=pers[i];
pers[i]=pers[j];
pers[j]=aux;
}
for (i=1;i<=3;i++)
g<<pers[i].nume<<" "<<pers[i].nr_spec<<" "<<pers[i].age<<"\n";
}
804
#include <fstream>
using namespace std;

ifstream f("date.in");
ofstream g("date.out");
int n,v[100];
int prim (int k)
{
for (int i=2;i<=k/2;i++)
if (k%i==0) return 0;
return 1;
}
void stergere (int k)
{
for (int i=k;i<n;i++)
v[i]=v[i+1];
n--;
}
int minim ()
{
int mini=32000;
for (int i=1;i<=n;i++)
if (v[i]<mini) mini=v[i];
return mini;
}
int main ()
{
int i,m;
f>>n>>m;
for (i=1;i<=n;i++)
f>>v[i];
for (i=1;i<=n;i++)
if (!prim(v[i]))
stergere(i);
int s=0;
while (s<=m)
{
int mini = minim();
s+=mini; g<<mini<<" ";
for (i=1;i<=n;i++)
if (v[i]==mini)
stergere (i);
}
}
809

#include <fstream>
using namespace std;
ifstream f("date.in");
ofstream g("date.out");
int n,a[100][100],b[100][100];
int minim (int a, int b)
{
if (a>b) return a;
else return b;
}
int main ()
{
int i,j;
f>>n;
for (i=1;i<=n;i++)
for (j=1;j<=i;j++)
f>>a[i][j];
for (i=1;i<=n;i++)
b[n][i]=a[n][i];
for (i=n-1;i>=1;i--)
for (j=1;j<=i;j++)
b[i][j]=a[i][j]+minim(b[i+1][j],b[i+1][j+1]);
g<<b[1][1];
}
890
#include <fstream>
using namespace std;
ifstream f("date.in");
ofstream g("date.out");
int n;
int dreapta (int a, int x)
{
x=x-1;
if (a+x<n) return a+x;
else return a+x-n;
}
int stanga (int a, int x)
{
x=x-1;
if (a-x>1) return a-x;
else return n-(x-a);
}
int main ()
{
int a=1,x,y;
f>>n;

while (f>>x>>y)
{
if (y==1) a=dreapta(a,x);
else a=stanga(a,x);
g<<a<<" ";
}
}

You might also like