牛客网Wannafly挑战赛15 B车辆安排(模拟)AND C 出队(规律)
传送门 :B题:点我
C题: 点我
题目描述
有n个队伍,每个队伍的人数小于等于5,每辆车最多坐5个人,要求一个队伍的人都在一辆车上,求最少的车数
输入描述:
第一行n
第二行n个数,表示每个队伍的人数
输出描述:
输出最少车数
输入
3 3 4 5
输出
3
备注:
n≤1e5每个数小于等于5 思路:大力模拟。5自己一车,4跟1一车,然后3跟2一车,2的时候分情况考虑,如果2是偶数,那么2+2+1或者2+2,如果2是奇数,那么分成偶数+1,最后一个2,可以2+1+1+1,或者2+1+1或者2+1或者2,最后处理1代码:(因为太长了就折叠了,然后最后附上了一些测试数据)
#include <cstdio> #include <cstring> #include <cmath> #include <cstdlib> #include <ctime> #include <iostream> #include <algorithm> #include <sstream> #include <string> #include <vector> #include <queue> #include <stack> #include <map> #include <set> #include <utility> #include <bitset>using namespace std; #define LL long long #define pb push_back #define mk make_pair #define pill pair<int, int> #define mst(a, b) memset(a, b, sizeof a) #define REP(i, x, n) for(int i = x; i <= n; ++i) int main(){int n;scanf("%d",&n);int a[6] = {};for(int i = 0 ; i < n ; i++){int x;scanf("%d",&x);a[x]++;}int sum = a[5];if(a[1] >= a[4]){sum += a[4];a[1] -= a[4];}else{sum += a[4];a[1] = 0;}if(a[2] >= a[3]){sum += a[3];a[2] -= a[3];}//如果2 比 3多 else{sum += a[2];a[3] -= a[2];a[2] = 0;int t = 2 * a[3];//a[3]可以带走多少a[1]if(a[1] >= t){sum += a[3];a[1] -= t;}else{sum += a[3];a[1] = 0;}}if(a[2] >= 0){int d1,d2;if(a[2] % 2 == 0){d1 = a[2] / 2;if(a[1] >= d1){sum += d1;a[1] -= d1;}else{sum += d1;a[1] = 0;}}else{d1 = a[2] / 2;d2 = 1;sum += 1;//无论怎么样多出来这一个2肯定要一辆车if(a[1] >= d1){sum += d1;a[1] -= d1;}else{sum += d1;a[1] = 0;}if(a[1] >= 3){a[1] -= 3;}else{a[1] = 0;}}}if(a[1] != 0){sum += (a[1]%5 == 0 ? a[1]/5 : a[1]/5 + 1);}printf("%d\n",sum); } /* 9 1 1 2 2 2 3 3 3 4 54 1 1 1 1 16 1 2 3 4 5 2 47 2 2 2 2 1 1 1 36 2 2 2 2 1 1 27 1 2 2 2 2 2 3 35 4 4 4 4 1 45 4 4 4 2 1 46 4 4 4 2 1 3 47 1 2 2 2 3 4 5 46 1 1 1 3 4 5 3 */
View Code
C题 出队
是个CF原题额,就是换了个题面。http://codeforces.com/contest/950/problem/D
题目描述
输入描述:
第一行两个数n,q接下来q行,每行一个数x,表示询问
输出描述:
一行输出一个询问的答案
输入
4 3 2 3 4
输出
3 2 4
说明
1 2 3 4围成一圈,第一轮:1 2报数,1出队,2留下,3出队,4留下,第二轮,2出队,4留下
备注:
q≤500000n和x≤1e18 代码:
#include<stdio.h> typedef long long ll; int main() {ll n,m,x;scanf("%lld%lld",&n,&m);while(m--){scanf("%lld",&x);while(x%2==0)x=n+x/2;printf("%lld\n",(x+1)/2);}return 0; }
转载于:https://www.cnblogs.com/Esquecer/p/9026710.html
牛客网Wannafly挑战赛15 B车辆安排(模拟)AND C 出队(规律)相关推荐
- 牛客网 Wannafly挑战赛8 A.小Y和小B睡觉觉
写了一会不想写了... A-小Y和小B睡觉觉 链接:https://www.nowcoder.com/acm/contest/57/A 来源:牛客网 时间限制:C/C++ 1秒,其他语言2秒 空间限制 ...
- 牛客网 Wannafly挑战赛20 A-染色
链接:https://www.nowcoder.com/acm/contest/133/A 来源:牛客网 时间限制:C/C++ 1秒,其他语言2秒 空间限制:C/C++ 262144K,其他语言524 ...
- 牛客网 Wannafly挑战赛27 蓝魔法师
蓝魔法师 链接: https://www.nowcoder.com/acm/contest/215/C 来源:牛客网 题目描述 "你,你认错人了.我真的,真的不是食人魔."--蓝魔 ...
- 牛客网wannafly挑战赛13-D(贪心)
链接:https://www.nowcoder.com/acm/contest/80/D 来源:牛客网 时间限制:C/C++ 1秒,其他语言2秒 空间限制:C/C++ 262144K,其他语言5242 ...
- 牛客网wannafly挑战赛13-E(线段树)
链接:https://www.nowcoder.com/acm/contest/80/E 来源:牛客网 时间限制:C/C++ 1秒,其他语言2秒 空间限制:C/C++ 262144K,其他语言5242 ...
- 题解——牛客网Wannafly挑战赛23 B-游戏 (SG函数)
前言 比赛的时候没学过SG函数的蒟蒻以为是道结论题,但是不是QwQ 和dummyummy巨佬一起推了快三个小时的规律 最后去问了真正的巨佬__stdcall __stdcall面带微笑的告诉我们,这是 ...
- [牛客网Wannafly挑战赛24F]wyf的超级多项式
Description 已知 F i = ∑ j = 1 k a j v j i F_i=\sum_{j=1}^{k}a_jv_j^i Fi=∑j=1kajvji 给出 v 1.. k v1. ...
- 牛客网Wannafly挑战赛29 B - 白井黑子 乱搞
Description kuroko 作为常盘台唯一的空间系能力者,在每年例行的能力测试中可绝对不能让 misaka 失望哦,但是由于她的等级只是 level 4「大能力者」,在能力测试中会遇到不少困 ...
- 牛客网Wannafly挑战赛4(割草机)
点击打开链接 思路:不管怎么走,都必须从第一个有'W'的行走到最后一个有'W'的行,对于每一行,都必须处理完这行所有的'W',如果在奇数行,那就应该走到这行和下一行有W的最右边,再往下走,如果在偶数行 ...
最新文章
- WMI技术介绍和应用——Event Consumer Provider
- 基于直方图的图像增强算法(HE、CLAHE、Retinex)
- 笔记-项目质量管理-编制质量管理计划的工具与技术
- 我也聊聊串口通信协议:用户层通信协议的编制
- OS / linux / 互斥锁实现原理(futex)
- python 通登录银行_Python3 适合初学者学习的银行账户登录系统实例
- linux各版本的发布时间,linux服务器-红帽企业Linux各个版本发布时间和内核版本...
- 域控服务器取消验证_Linux 开发笔记《使用CentOS 7进行初始服务器设置》
- 复利计算——单元测试
- 关于ROS的设置问题
- 特征金字塔:FPN网络 - Pytorch实现
- 通达信接口的开发工具?
- arcgis for android 调用公网天地图注记重影问题
- 麦吉尔大学计算机科学申请,麦吉尔大学计算机科学
- 马云:我肯定是12x12,你们却在纠结不能996
- CSP 2018-9-4 再卖菜 搜索 + 剪枝
- word使用技巧---插入图片显示不全的解决方案
- WINCE 实用技巧 之 创建快捷方式详解
- cfg格式文件在服务器哪里,cfg文件,小编教你怎么打开cfg文件
- 怎么建立win7无线热点
热门文章
- apache缺省banner_http服务器缺省banner
- matlab m文件的编写,Matlab实验报告(四)M文件的编写.doc
- python怎么切换中文键盘_python模拟键盘输入 切换键盘布局过程解析
- mysql显示表已存在_MySQL数据库与数据表的相关操作
- java 写 gz_java简写名词解释 - osc_gzyujipq的个人空间 - OSCHINA - 中文开源技术交流社区...
- arduino串口输入改变模式模块
- python 函数 过程_python学习之函数(三)--函数与过程
- linux内核提取ret2usr,Linux内核漏洞利用技术详解 Part 2
- java的继承实例_java继承(实例讲解一)
- 实战 es6_腾讯云 Elasticsearch 实战篇(二十二) ES6.8权限使用配置