欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

牛客竞赛-编程语言初学练习赛(第七场)

程序员文章站 2022-03-09 20:16:21
...

编程语言初学练习赛(第七场)
练习赛地址

A 成绩输入输出问题

原样输出

#include<iostream>
#include<algorithm>
#include<cstdio>
#include<cmath>
#include<cstring>
using namespace std;

int main()
{
	int a, b, c, d, e, f, g, h, i, j;
	scanf("%d%d%d%d%d%d%d%d%d%d", &a, &b, &c, &d, &e, &f, &g, &h, &i, &j);
	printf("%d %d %d %d %d %d %d %d %d %d", a, b, c, d, e, f, g, h, i, j);
	return 0;
}

B 逆序输出

新手入门必备技能

#include<iostream>
#include<algorithm>
#include<cstdio>
#include<cmath>
#include<cstring>
using namespace std;
int a[15];
int main()
{
	int i;
	for(i = 0; i <= 9; i++)
	{
		scanf("%d", &a[i]);
	}
	for(i--; i >= 0; i--)
	{
		printf("%d ", a[i]);
	}
	
	return 0;
}

C 统计数据正负个数

#include<iostream>
#include<algorithm>
#include<cstdio>
#include<cmath>
#include<cstring>
using namespace std;
int a[15];
int main()
{
	int count1 = 0, count2 = 0;
	for(int i = 0; i <= 9; i++)
	{
		scanf("%d", &a[i]);
		if(a[i] > 0) count1++;
		else if(a[i] < 0) count2++;
	}
	
	printf("positive:%d\n", count1);
	printf("negative:%d\n", count2);
	
	return 0;
}

D N个数之和

#include<iostream>
#include<algorithm>
#include<cstdio>
#include<cmath>
#include<cstring>
using namespace std;
int num[10005];
int main()
{
	int n, i, c;
	scanf("%d", &n);
	for(i = 0; i < n; i++)
	{
		scanf("%d", &num[i]);		//开始输入数字 
	}
	sort(num, num + n);
	c = num[n-1] - num[0];
	printf("%d", c);
	return 0;
}

E 最高分与最低分之差

排序,计算差值

#include<iostream>
#include<algorithm>
#include<cstdio>
#include<cmath>
#include<cstring>
using namespace std;
int num[10005];
int main()
{
	int n, i, c;
	scanf("%d", &n);
	for(i = 0; i < n; i++)
	{
		scanf("%d", &num[i]);		//开始输入数字 
	}
	sort(num, num + n);
	c = num[n-1] - num[0];
	printf("%d", c);
	return 0;
}

F 有序序列判断

数组排序,开始有难度了。

#include<stdio.h>
int a[100];
int main()
{
int i,n,f,ff;

scanf("%d",&n);
    f = ff=1;
    for( i=0;i<n;i++)
    {
        scanf("%d",a+i);
    }
    for( i=0;i<n-1;i++ )
    {
        if( a[i]<a[i+1] )
        {
            ff = 0;
        }
        if( a[i]>a[i+1] )
        {
            f = 0;
        }
    }
    if( f==1 || ff==1) printf("sorted");
    if( (f+ff) == 0 ) printf("unsorted");
    return 0;
}

G 有序序列插入一个整数

数组排序问题

#include <stdio.h>
int main()
{
	int n, i, j, t, a[11];
	scanf("%d", &n);
	
	for(i = 0; i < n; i++)
		scanf("%d", &a[i]);
	
	scanf("%d", &t);
	i = 0;
	
	while(a[i] < t && i < n)
		i++;
	for (j = n - 1; j >= i; j--)
	{
		a[j + 1] = a[j];
	}
	a[i] = t;
	for(i = 0; i < n + 1; i++)
		printf("%d ", a[i]);
	return 0;
}

H 序列中删除指定数字

#include<iostream>
#include<algorithm>
#include<cstdio>
#include<cmath>
#include<cstring>
using namespace std;
int num[55];
int main()
{
	int n, i, b;
	scanf("%d", &n);
	
	for(i = 0; i < n; i++)
	{
		scanf("%d", &num[i]);		//开始输入数字
	}
	
	scanf("%d", &b);
	for(i = 0; i < n; i++)
	{
		if(num[i] == b) continue;
		else
			printf("%d ", num[i]);
	}
	
	
	return 0;
}

I 序列中整数去重

数组序列去重

#include<cstdio>
#include<cstdlib>
#include<iostream>
#include<algorithm>
using namespace std;
int num[1005]; 
int main()
{
	int n;
	scanf("%d", &n);
	
	for(int i = 1; i <= n; i++)
	{
		scanf("%d", &num[i]);
		for(int j = 1; j < i; j++)
		{
			if(num[j] == num[i])
			{
				i = i - 1;
				n = n - 1;
			}
		}
	}
	for(int i = 1; i <= n; i++)
	{
		printf("%d ", num[i]);
	}
	return 0;
}

J 有序序列合并

#include<iostream>
#include<algorithm>
#include<cstdio>
#include<cmath>
#include<cstring>
using namespace std;
int num[205];
int main()
{
	int n, m, i;
	scanf("%d%d", &n, &m);
	
	for(i = 0; i < n + m; i++)
	{
		scanf("%d", &num[i]);		//开始输入数字
	}
	
//	for(i = n; i < n + m; i++)
//	{
//		scanf("%d", &num[i]);		//开始输入数字
//	}
	sort(num, num + m + n);
	
	for(int i = 0; i < n + m; i++) 
		printf("%d ", num[i]);
	
	return 0;
}
相关标签: 入门