C++从入门到入土-4.21的七道题(排序)

1.明明的随机数

C++从入门到入土-4.21的七道题(排序)_第1张图片

代码:

#include
using namespace std;
int main()
{
	freopen("random.in","r",stdin);
	freopen("random.out","w",stdout);
	int N,a[1001]={0},t;
	int count=0;//计数器 
	scanf("%d",&N);
	for(int i=0;i

2.车厢重组

C++从入门到入土-4.21的七道题(排序)_第2张图片

代码:

#include  
#define Max 10010  
int a[Max];  
int main()  
{  
    freopen("carry.in","r",stdin); 
	freopen("carry.out","w",stdout); 
    int n,i,j,count;  //count计数器 
	scanf("%d",&n);
    for(i=1;i<=n;i++)  
        scanf("%d",&a[i]);  
    count=0;  
    //冒泡排序 
    for(i=1;ia[j+1])  
            {  
                int tmp=a[j];  
                a[j]=a[j+1];  
                a[j+1]=tmp;  
                count++;  
            }  
        }  
    }  
    printf("%d\n",count);  
 	fclose(stdin);
 	fclose(stdout);
    return 0;  
}  

3.众数C++从入门到入土-4.21的七道题(排序)_第3张图片

#include 
#include 
#include 
#include 

using namespace std;
int main(void)
{
	
	freopen("masses.in","r",stdin);
	freopen("masses.out","w",stdout);
	int max=0,num=0;
	int n,a[30009];
	memset(a,0,sizeof(a));
	scanf("%d",&n);
	for(int i=1;i<=n;i++)
	{
		int x;
		scanf("%d",&x);
		a[x]++;
	}
	
	for(int i=1;i<=30000;i++)
	{
		if(a[i]>max)
		{
			max=a[i];
		}
	}
	for(int i=1;i<=30000;i++)
	{
		if(a[i]==max)
		{
			cout<< i<<' '<


4.第k小整数(洛谷P1138)

C++从入门到入土-4.21的七道题(排序)_第4张图片

代码

#include
#include
using namespace std;
int a[30005];
int main()
{
	freopen("knumber.in","r",stdin);
	freopen("knumber.out","w",stdout); 
    int n,k;
    cin>>n>>k;
    for(int i=0;i>x;
        a[x]=1;
    }
    for(int i=1;i<=30000;i++)
    {
        if(a[i]==1)k--;
        if(k==0)
		{
			cout<

5.军事机密

C++从入门到入土-4.21的七道题(排序)_第5张图片

#include
#include
#include
using namespace std;
int a[30002];
int main()
{
	freopen("secret.in","r",stdin); 
	freopen("secret.out","w",stdout); 
    int n,i,m,k;
    cin>>n;
    for(i=0;i>a[i];
    sort(a,a+n);
    cin>>m;
    for(i=1;i<=m;i++)
    {
        cin>>k;
        cout<

6.统计数字C++从入门到入土-4.21的七道题(排序)_第6张图片

代码

#include   
#include   
int n;  
int a[200001];  
int cmp(const void *a,const void *b)
{  
    return *(int *)a-*(int *)b;  
}  
int main(){  
    freopen("count.in","r",stdin);  
    freopen("count.out","w",stdout);  
    scanf("%d",&n);
	  
	for (int i=1;i<=n;i++)
	{  
   		scanf("%d",&a[i]);  
	}  
	qsort(a+1,n,sizeof(int),cmp);  
	int cnt=0,s=0;  
	for (int i=1;i<=n;i++)
	{  
        if (i==1)
		{  
			s=a[i];  
			cnt++;  
			continue;  
        }  
        if (s!=a[i])
		{  
			printf("%d %d\n",s,cnt);  
			s=a[i];  
			cnt=1;  
        }  
        else if (s==a[i]) cnt++;  
	}  
	printf("%d %d\n",s,cnt); 
	
	fclose(stdin);
	fclose(stdout); 
    return 0;  
}  

7.输油管道

C++从入门到入土-4.21的七道题(排序)_第7张图片

#include  
#include  
#include  
using namespace std;  
struct node  
{  
    int x,y;  
} num[200001];  
bool cmp(node a,node b)  
{  
    return a.y


你可能感兴趣的:(排序)