zoukankan      html  css  js  c++  java
  • zzuli--1812--sort(模拟水题)

    1812: sort

    Time Limit: 1 Sec  Memory Limit: 128 MB
    Submit: 158  Solved: 30

    SubmitStatusWeb Board

    Description

    想必大家对排序已经很熟悉了,但是spy好像对排序不太熟悉,有一天,他看到这样一个关于排序的题目:

    对于 k 个用空格分隔开的整数,依次为 n1, n2 … nk。请将所有下标不能被 3 但可以被 2 整除的数在这些数字原有的位置上进行升序排列,此外,将余下下标能被 3 整除的数在这些数字原有的位置上进行降序排列。

    spy想了半天不知道怎么排序,你可以帮助他么?

    Input

    多组数据,每组数据一行,为k个小于1000的正整数,依次为 n1, n2 … nk。(1 <= k <= 100000)

    Output

    对于每组数据,输出排序后的结果。

    Sample Input

    1 3 4 2 10 6 8

    Sample Output

    1 2 6 3 10 4 8

    这道题输入有点坑,其他都没啥

    #include<iostream>
    #include<cstdio>
    #include<cmath>
    #include<cstring>
    #include<algorithm>
    #include<vector>
    #include<queue>
    #include<stack>
    #include<map>
    using namespace std;
    #define MAXN 200000
    int a[MAXN],b[MAXN],c[MAXN];
    int cmp(int a,int b)
    {
    	return a>b;
    }
    int main()
    {
    	int k,i=0;
    	char ch;
    	while(~scanf("%d",&a[++i]))
    	{
    		ch=getchar();
    		if(ch==' ') continue;
    		//如果两个数据之间是' '的话就继续输入,负责就开始操作 
    		else
    		{
    			int ans=0,cnt=0;
    			for(int j=1;j<=i;j++)
    			{
    				if(j%2==0&&j%3!=0)
    				b[cnt++]=a[j];
    				else if(j%3==0)
    				c[ans++]=a[j];
    			}
    			sort(b,b+cnt);
    			sort(c,c+ans,cmp);
    			int m=0,n=0,flot=0;
    			for(int j=1;j<=i;j++)
    			{
    				if(flot)printf(" ");
    				else flot++;
    				if(j%2==0&&j%3!=0)
    				printf("%d",b[m++]);
    				else if(j%3==0)
    				printf("%d",c[n++]);
    				else printf("%d",a[j]);
    			}
    			printf("
    ");
    		}
    		memset(a,0,sizeof(a));//数据还是清零的好,没清零错了两次 
    		memset(b,0,sizeof(b));
    		memset(c,0,sizeof(c));
    		i=0;	
    	}
    	return 0;
    }


  • 相关阅读:
    WCF框架基础(三)
    前台动态增加行,并将结果打印到XML文件
    WCF框架基础(二)
    Out Ref用法
    uploadify3.1版本参数使用详解
    WCF框架基础(一)
    ajax直接调用后台
    Linq to DataSet查询
    3.2版uploadify详细例子(含FF和IE SESSION问题)
    sprintf以及__int64 与long long int
  • 原文地址:https://www.cnblogs.com/playboy307/p/5273628.html
Copyright © 2011-2022 走看看