Вы находитесь на странице: 1из 13

#include <cstdio>

#include <algorithm>
using namespace std;
typedef struct
{
int lin,col,val;
} mat;
mat v1[300005],v2[300005],v3[2000005];
bool cmp(mat a,mat b)
{
if(a.lin == b.lin)
{
if(a.col == b.col)
return a.val < b.val;
else
return a.col < b.col;
}
else
return a.lin < b.lin;
}
int main()
{
freopen("matrice_rara.in", "r",stdin);
freopen("matrice_rara.out", "w",stdout);
int n,m,n1,n2,a,b,c;
scanf("%d%d%d%d", &n, &m, &n1, &n2);
for(int i = 1; i <= n1; i++)
{
scanf("%d%d%d", &a, &b, &c);
v1[i].lin = a;
v1[i].col = b;
v1[i].val = c;
}
for(int i = 1; i <= n2; i++)
{
scanf("%d%d%d", &a, &b, &c);
v2[i].lin = a;
v2[i].col = b;
v2[i].val = c;
}
int ok;
int k = 0;
for(int i = 1; i <= n1; i++)
{
ok = 1;
for(int j = 1; j <= n2; j++)
{
if(v1[i].lin == v2[j].lin && v1[i].col == v2[j].col)
{
ok = 0;
v3[++k].lin = v1[i].lin;
v3[k].col = v1[i].col;
if(v1[i].val + v2[j].val == 0)
k--;
else
v3[k].val = v1[i].val + v2[j].val;
i++;
}

}
if(ok == 1)
{
v3[++k].lin = v1[i].lin;
v3[k].col = v1[i].col;
v3[k].val = v1[i].val;
}
}
int ok2 = 0;
for(int i = 1;i <= n2;i++)
{
ok2 = 1;
for(int j = 1;j <= n1;j++)
{
if(v2[i].lin == v1[j].lin && v2[i].col == v1[j].col)
{
ok2 = 0;
break;
}
}
if(ok2 == 1)
{
v3[++k].lin = v2[i].lin;
v3[k].col = v2[i].col;
v3[k].val = v2[i].val;
}
}
sort(v3 + 1,v3 + k + 1,cmp);
printf("%d\n",k);
for(int i = 1;i <= k;i++)
printf("%d %d %d\n",v3[i].lin,v3[i].col,v3[i].val);
return 0;
}
1.
#include <cstdio>
02.
#include <cmath>
03.
04.
using namespace std;
05.
bool c[1000001];
06.
07.
int main()
08.
{
09.
freopen("treidiv.in", "r",stdin);
10.
freopen("treidiv.out", "w",stdout);
11.
int n,lim,i,j,a,cnt = 0;
12.
c[0] = c[1] = 1;
13.

c[2] = 0;
14.
for(i = 4;i <= 1000;i += 2)
15.
c[i] = 1;
16.
lim = (int)sqrt((double)1000);
17.
for(i = 3;i <= lim;i += 2)
18.
{
19.
if(c[i] == 0)
20.
{
21.
for(j = i * i;j <= 1000;j = j + 2 * i)
22.
c[j] = 1;
23.
}
24.
}
25.
scanf("%d", &n);
26.
for(i = 1;i <= n;i++)
27.
{
28.
scanf("%d", &a);
29.
lim = (int)sqrt((double)a);
30.
if(lim * lim == a)
31.
{
32.
if(c[lim] == 0)
33.
cnt++;
34.
}
35.
}
36.
printf("%d\n",cnt);
37.
return 0;
38.
}
#include <cstdio>
#include <algorithm>
using namespace std;
int v[1005],sum[110005];
int main()

{
freopen("ordsume.in", "r",stdin);
freopen("ordsume.out", "w",stdout);
int n,i,k = 0,j;
scanf("%d", &n);
for(i = 1;i <= n;++i)
scanf("%d", &v[i]);
for(i = 1;i < n;++i)
for(j = i + 1;j <= n;++j)
sum[++k] = v[i] + v[j];
sort(sum + 1,sum + k + 1);
for(i = 1;i <= k;i++)
{
while(sum[i] == sum[i + 1])
i++;
printf("%d ",sum[i]);
}
return 0;
}
#include <cstdio>
#include <algorithm>
using namespace std;
int v[1005];
int main()
{
freopen("paresort.in", "r",stdin);
freopen("paresort.out", "w",stdout);
int n,i,a,k = 0;
scanf("%d", &n);
for(i = 1;i <= n;++i)
{
scanf("%d", &a);
if(a % 2 == 0)
v[++k] = a;
}
if(k == 0)
{
printf("nu exista");
return 0;
}
else
{
sort(v + 1,v + k + 1);
printf("%d\n",k);
for(i = 1;i <= k;++i)
printf("%d ",v[i]);
}
return 0;
}
#include <cstdio>
#include <algorithm>
using namespace std;
int v[105];

int main()
{
freopen("puterik.in", "r",stdin);
freopen("puterik.out", "w",stdout);
int n,i,a,k,p,l = 0;
scanf("%d%d", &n, &k);
for(i = 1;i <= n;i++)
{
scanf("%d", &a);
p = 1;
while(p < a)
p = p * k;
if(p == a)
v[++l] = a;
}
sort(v + 1,v + l + 1);
for(i = 1;i <= l;i++)
printf("%d ",v[i]);
return 0;
}
#include <cstdio>
#include <algorithm>
using namespace std;
int v[2000005];
bool ver(int i)
{
return (v[i - 1] + v[i + 1]) == v[i] * 2;
}
bool cmp(int a,int b)
{
return a > b;
}
int main()
{
freopen("arhitectura2.in", "r",stdin);
freopen("arhitectura2.out", "w",stdout);
int n,i;
scanf("%d", &n);
for(i = 1;i <= n;i++)
scanf("%d", &v[i]);
sort(v + 1,v + n + 1,cmp);
for(i = 1;i <= n;i++)
printf("%d ",v[i]);
printf("\n");
for(i = 1;i <= n;i++)
printf("%d ",ver(i));
return 0;
}
#include <stdio.h>
#include <stdlib.h>
int main()
{
long long prod;
int n,cnt;

scanf("%d", &n);
prod = 1;cnt = 1;
while(cnt <= n)
{
prod = prod * cnt;
cnt++;
}
printf("%lld",prod);
return 0;
}
#include <cstdio>
#include <algorithm>
using namespace std;
int v[103],sumcif[103];
int scf(int a)
{
while(a > 9)
a /= 10;
return a;
}
int main()
{
freopen("sortcif2.in", "r",stdin);
freopen("sortcif2.out", "w",stdout);
int n,i;
scanf("%d", &n);
for(i = 1;i <= n;i++)
{
scanf("%d", &v[i]);
sumcif[i] = scf(v[i]);
}
int sortat = 0;
while(!sortat)
{
sortat = 1;
for(i = 1;i < n;i++)
{
if(sumcif[i] > sumcif[i + 1])
{
swap(sumcif[i],sumcif[i + 1]);
swap(v[i],v[i + 1]);
sortat = 0;
}
}
}
for(i = 1;i <= n;i++)
printf("%d ",v[i]);
return 0;
}
CIF MIN
#include <cstdio>
using namespace std;
int v[10];
int main()
{

int n,i,x,mi;
scanf("%d", &n);
for(i = 1;i <= n;i++)
{
scanf("%d", &x);
mi = 10;
while(x)
{
if(x % 10 < mi)
mi = x % 10;
x /= 10;
}
v[mi]++;
}
i = 1;
while(v[i] == 0 && i <= 9)
i++;
if(i == 10)
{
printf("0");
return 0;
}
printf("%d",i);
v[i]--;
for(i = 0;i <= 9;i++)
{
while(v[i] != 0)
{
printf("%d",i);
v[i]--;
}
}
return 0;
}
inaltimi
#include <cstdio>
#include <algorithm>
using namespace std;
int v[1005],ord[1005];
int main()
{
int n,i;
scanf("%d", &n);
for(i = 1;i <= n;i++)
{
scanf("%d", &v[i]);
ord[i] = i;
}
int s;
s = 0;
while(s == 0)
{
s = 1;
for(i = 1;i < n;i++)
{
if(v[i] > v[i + 1])

{
swap(v[i],v[i + 1]);
swap(ord[i],ord[i + 1]);
s = 0;
}
}
}
for(i = 1;i <= n;i++)
printf("%d ",ord[i]);
return 0;
}
sortprime
#include <cstdio>
#include <cmath>
#include <algorithm>
using namespace std;
int prime[1005];
int prim(int n)
{
int pr,lim,j;
if(n == 1 || n == 0 || (n % 2 == 0 && n != 2))
pr = 0;
else
{
lim = (int)sqrt((double)n);
pr = 1;
for(j = 3;j <= lim;j += 2)
{
if(n % j == 0)
{
pr = 0;
break;
}
}
}
return pr;
}
int main()
{
int n,i,k,a;
scanf("%d", &n);
k = 0;
for(i = 1;i <= n;i++)
{
scanf("%d", &a);
if(prim(a) == 1)
prime[++k] = a;
}
sort(prime + 1,prime + k + 1);
for(i = 1;i <= k;i++)
printf("%d ",prime[i]);
return 0;
}
vocale vector

#include <cstdio>
using namespace std;
char x[4005];
int main()
{
int n,i;
scanf("%d\n", &n);
for(i = 1;i <= n;i++)
{
if(i == n)
scanf("%c", &x[i]);
else
scanf("%c ", &x[i]);
}
for(i = 1;i <= n;i++)
{
if(x[i] == 'a' || x[i] == 'e' || x[i] == 'i' || x[i] == 'o' || x[i] == '
u')
printf("%c ",x[i]);
}
for(i = 1;i <= n;i++)
{
if(x[i] != 'a' && x[i] != 'e' && x[i] != 'i' && x[i] != 'o' && x[i] != '
u')
printf("%c ",x[i]);
}
return 0;
}
SORTPIE
#include <cstdio>
#include <algorithm>
using namespace std;
int v[1005],p[1005];
bool cmp(int a,int b)
{
return a > b;
}
int cmmdc(int a,int b)
{
int r;
while(b)
{
r = a % b;
a = b;
b = r;
}
return a;
}
int main()
{
int n,i,k;
scanf("%d", &n);
k = 0;

for(i = 1;i <= n;i++)


scanf("%d", &v[i]);
for(i = 1;i <= n - 1;i++)
{
if(cmmdc(v[i],v[n]) == 1)
p[++k] = v[i];
}
sort(p + 1,p + k + 1,cmp);
for(i = 1;i <= k;i++)
printf("%d ",p[i]);
return 0;
}
sort k
#include <cstdio>
#include <algorithm>
using namespace std;
int v[1005];
bool cmp(int a,int b)
{
return a > b;
}
int main()
{
int n,i,k;
scanf("%d%d", &n, &k);
for(i = 1;i <= n;i++)
scanf("%d", &v[i]);
sort(v + 1,v + k + 1);
sort(v + k + 1,v + n + 1,cmp);
for(i = 1;i <= n;i++)
printf("%d ",v[i]);
return 0;
}
PORTOFEL
#include <cstdio>
02.
03.
using namespace std;
04.
int a[200001],f[8];
05.
06.
int main()
07.
{
08.
freopen("portofel.in", "r",stdin);
09.
freopen("portofel.out", "w",stdout);
10.
int n,m,i,j,macs;

11.
scanf("%d", &n);
12.
for(i = 0;i < n;i++)
13.
scanf("%d", &a[i]);
14.
j = i;
15.
scanf("%d", &m);
16.
for(i = j;i < n + m;i++)
17.
scanf("%d", &a[i]);
18.
for(i = 0;i < n + m;i++)
19.
{
20.
if(a[i] == 1)
21.
f[1]++;
22.
else if(a[i] == 5)
23.
f[2]++;
24.
else if(a[i] == 10)
25.
f[3]++;
26.
else if(a[i] == 50)
27.
f[4]++;
28.
else if(a[i] == 100)
29.
f[5]++;
30.
else if(a[i] == 200)
31.
f[6]++;
32.
else if(a[i] == 500)
33.
f[7]++;
34.
}
35.
macs = f[1];
36.
for(i = 2;i < 8;i++)
37.
{
38.
if(f[i] > macs)
39.
macs = f[i];
40.
}

41.
printf("%d\n0",macs);
42.
return 0;
43.
}
SORTMAX
#include <cstdio>
#include <algorithm>
using namespace std;
int v[1005];
bool cmp(int a,int b)
{
return a > b;
}
int main()
{
int n,i,m,poz,k;
scanf("%d", &n);
m = -1;
poz = 1;
for(i = 1;i <= n;i++)
{
scanf("%d", &v[i]);
if(v[i] > m)
{
m = v[i];
poz = i;
}
}
k = poz - 1;
sort(v + 1,v + k + 1);
sort(v + k + 1,v + n + 1,cmp);
for(i = 1;i <= n;i++)
printf("%d ",v[i]);
return 0;
}
sclm
#include <cstdio>
#include <algorithm>
#include <climits>
using namespace std;
struct vect
{
int x,y,z,t;
};
vect v[1005];
int main()
{
freopen("sclm.in", "r",stdin);
freopen("sclm.out", "w",stdout);

int n,i,pozinc,j,k,l,lmax = -1,mi;


scanf("%d", &n);
for(i = 1; i <= n; i++)
scanf("%d", &v[i].x);
for(i = 1; i <= n; i++)
{
l = 0;
v[++l].y = i;
v[l].t = v[i].x;
for(k = i + 1; k <= n; k++)
{
mi = INT_MAX - 423243;
for(j = k; j <= n; j++)
{
if(v[j].x < mi && v[j].x > v[l].t)
{
mi = v[j].x;
pozinc = j;
}
}
if(mi != INT_MAX - 423243)
{
v[++l].y = pozinc;
v[l].t = mi;
k = pozinc;
}
}
if(l > lmax)
{
lmax = l;
for(j = 1;j <= l;j++)
v[j].z = v[j].y;
}
}
printf("%d\n",lmax);
for(i = 1;i <= lmax;i++)
printf("%d ",v[i].z);
return 0;
}

Вам также может понравиться