博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
【算法笔记】B1055 集体照
阅读量:4981 次
发布时间:2019-06-12

本文共 1118 字,大约阅读时间需要 3 分钟。

思路:

  对输入的姓名身高按降序排序,然后调整每排的站位并输出,调整站位的时候先确定中心再调整一边比较容易实现。

code

#include
using namespace std;const int maxn = 10010;struct student{ string name; int height;};int cmp(student a, student b) { return a.height != b.height ? a.height > b.height : a.name < b.name;}int main(){ int n, k, m; cin>>n>>k; vector
stu(n); for(int i = 0; i < n; i++) { cin >> stu[i].name >> stu[i].height; } sort(stu.begin(), stu.end(), cmp); int t = 0, row = k; while(row) { if(row == k) m = n - n / k * (k - 1); else m = n / k; vector
ans(m); ans[m / 2] = stu[t].name; int j = m / 2 - 1; for(int i = t + 1; i < t + m; i = i + 2) ans[j--] = stu[i].name; j = m / 2 + 1; for(int i = t + 2; i < t + m; i = i + 2) ans[j++] = stu[i].name; cout << ans[0]; for(int i = 1; i < m; i++) cout << " " << ans[i]; cout << endl; t = t + m; row--; } return 0;}

 

转载于:https://www.cnblogs.com/chunlinn/p/10810819.html

你可能感兴趣的文章
堆叠注入
查看>>
Python 之ConfigParser模块
查看>>
yaml模块
查看>>
数据库函数
查看>>
免交互批量分发公钥的实现
查看>>
在Python脚本中调用Django环境
查看>>
Django Rest Framework
查看>>
orm字段类型使用
查看>>
saltstack安装使用
查看>>
centos 下 yum安装python3
查看>>
cmdb资产管理2
查看>>
Python 命令行工具 argparse 模块使用详解
查看>>
jQuery和使用oninput事件
查看>>
es学习
查看>>
anaconda使用
查看>>
python中分页使用
查看>>
爬虫学习推荐目录
查看>>
[CSS] Change the Alignment of a Single Flexed Item with 'align-self'
查看>>
[Dart] Capture and Handle Data Sequences with Streams in Dart
查看>>
[Dart] splitMapJoin
查看>>