zoukankan      html  css  js  c++  java
  • 1055 集体照 (25 分)

    TIM截图20190301110900.jpg

    #include <iostream>
    #include<string>
    #include<algorithm>
    using namespace std;
    #define N 10002
    typedef struct {
    	string name;
    	int height;
    }node,human[N];
    bool compare(node x, node y) {//自定义排序函数
    	if (x.height > y.height) {
    		return true;
    	}
    	if (x.height == y.height) {
    		if (x.name < y.name) {
    			return true;
    		}
    	}
    	return false;
    }
    int main()
    {
    	int n, k;
    	cin >> n >> k;
    	int m = n / k;//每排人数
    	human a;
    	for (int i = 0;i < n;i++) {
    		cin >> a[i].name >> a[i].height;
    	}
    	sort(a, a + n,compare);
    	int last = n - m * (k - 1);//最后一排人数
    	int mid = last / 2 + 1;//中间位置
    	node put[last+1];
    	int left = 1, right = 0;
    	bool flag = true;
    	//先排好最后一排
    	for (int i = 0;i < last;i++) {
    		if (flag) {
    			put[mid + right] = a[i];
    			right++;
    			flag = false;
    		}
    		else {
    			put[mid - left] = a[i];
    			left++;
    			flag = true;
    		}
    	}
    	for (int i = 1;i <= last;i++) {
    		if (i != 1)cout << ' ';
    		cout << put[i].name;
    	}
    	cout << endl;
    	//再排其他排
    	flag = true;
    	left = 1, right = 0;
    	int jishu = 0;
    	int zhong = m / 2 + 1;//每排的中间位置
    	for (int i = last;i < n;i++) {
    		if (flag) {
    			put[zhong + right] = a[i];
    			right++;
    			jishu++;
    			flag = false;
    		}
    		else {
    			put[zhong - left] = a[i];
    			left++;
    			jishu++;
    			flag = true;
    		}
    		if (jishu == m) {
    			flag = true;
    			left = 1, right = 0;
    			jishu = 0;
    			int zhong = m / 2 + 1;//每排的中间位置
    			for (int j = 1;j <= m;j++) {
    				if (j != 1)cout << ' ';
    				cout << put[j].name;
    			}
    			cout << endl;
    		}
    	}
    	
    	return 0;
    }
    
  • 相关阅读:
    ubuntu系统下安装最新版的MySQL
    scp本地服务器和远程服务器拷贝文件
    linux设置环境变量
    PHP程序员玩转Linux系列-lnmp环境的搭建
    nginx与负载均衡
    Linux下vim的常用命令总结
    nginx与location规则
    ssh秘钥对免密码登陆
    ubuntu下安装php pdo扩展和导入数据库
    ArrayList的删除实现
  • 原文地址:https://www.cnblogs.com/chance-zou/p/10455259.html
Copyright © 2011-2022 走看看