传送门 :B题:点我

    C题: 点我

题目描述

有n个队伍,每个队伍的人数小于等于5,每辆车最多坐5个人,要求一个队伍的人都在一辆车上,求最少的车数

输入描述:

第一行n
第二行n个数,表示每个队伍的人数

输出描述:

输出最少车数

输入例子:
3
3 4 5
输出例子:
3

-->

示例1

输入

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[] = {};
for(int i = ; i < n ; i++){
int x;
scanf("%d",&x);
a[x]++;
}
int sum = a[];
if(a[] >= a[]){
sum += a[];
a[] -= a[];
}
else{
sum += a[];
a[] = ;
}
if(a[] >= a[]){
sum += a[];
a[] -= a[];
}//如果2 比 3多
else{
sum += a[];
a[] -= a[];
a[] = ;
int t = * a[];//a[3]可以带走多少a[1]
if(a[] >= t){
sum += a[];
a[] -= t;
}
else{
sum += a[];
a[] = ;
}
}
if(a[] >= ){
int d1,d2;
if(a[] % == ){
d1 = a[] / ;
if(a[] >= d1){
sum += d1;
a[] -= d1;
}
else{
sum += d1;
a[] = ;
} }
else{
d1 = a[] / ;
d2 = ;
sum += ;//无论怎么样多出来这一个2肯定要一辆车
if(a[] >= d1){
sum += d1;
a[] -= d1;
}
else{
sum += d1;
a[] = ;
}
if(a[] >= ){
a[] -= ;
}
else{
a[] = ;
}
}
}
if(a[] != ){
sum += (a[]% == ? a[]/ : a[]/ + );
}
printf("%d\n",sum);
}
/*
9
1 1 2 2 2 3 3 3 4
5 4
1 1 1 1
1 6
1 2 3 4 5 2
4 7
2 2 2 2 1 1 1
3 6
2 2 2 2 1 1
2 7
1 2 2 2 2 2 3
3 5
4 4 4 4 1
4 5
4 4 4 2 1
4 6
4 4 4 2 1 3
4 7
1 2 2 2 3 4 5
4 6
1 1 1 3 4 5
3
*/

C题 出队

是个CF原题额,就是换了个题面。http://codeforces.com/contest/950/problem/D

题目描述

约瑟夫问题(https://baike.baidu.com/item/约瑟夫问题),n个人,1 2报数 1出队( 就是体育课的时候1 2报数 1出队,2留下),q次询问,每次求第x个人是第几个出队的

输入描述:

第一行两个数n,q
接下来q行,每行一个数x,表示询问

输出描述:

一行输出一个询问的答案

输入例子:
4 3
2
3
4
输出例子:
3
2
4

-->

示例1

输入

4 3
2
3
4

输出

3
2
4

说明

1 2 3 4围成一圈,第一轮:1 2报数,1出队,2留下,3出队,4留下,第二轮,2出队,4留下

备注:

q≤500000
n和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%==)
x=n+x/;
printf("%lld\n",(x+)/);
}
return ;
}

牛客网Wannafly挑战赛15 B车辆安排(模拟)AND C 出队(规律)的更多相关文章

  1. 牛客网 Wannafly挑战赛9 A.找一找-数据处理

    好几天没好好学习了(咸鱼晒干了) 把稍微没那么咸鱼的几天前的一场牛客网的比赛稍微看了一下,菜的要死,这一场大数的比较多,都死了. A.找一找 时间限制:C/C++ 1秒,其他语言2秒 空间限制:C/C ...

  2. 牛客网 Wannafly挑战赛 A 找一找 思考题

    链接:https://www.nowcoder.com/acm/contest/71/A来源:牛客网 题目描述 给定n个正整数,请找出其中有多少个数x满足:在这n个数中存在数y=kx,其中k为大于1的 ...

  3. 牛客网 Wannafly挑战赛9 C.列一列-sscanf()函数

      C.列一列   时间限制:C/C++ 1秒,其他语言2秒空间限制:C/C++ 262144K,其他语言524288K64bit IO Format: %lld 链接:https://www.now ...

  4. 牛客网Wannafly挑战赛25A 因子(数论 素因子分解)

    链接:https://www.nowcoder.com/acm/contest/197/A来源:牛客网 时间限制:C/C++ 1秒,其他语言2秒 空间限制:C/C++ 262144K,其他语言5242 ...

  5. 题解——牛客网Wannafly挑战赛23 B-游戏 (SG函数)

    前言 比赛的时候没学过SG函数的蒟蒻以为是道结论题,但是不是QwQ 和dummyummy巨佬一起推了快三个小时的规律 最后去问了真正的巨佬__stdcall __stdcall面带微笑的告诉我们,这是 ...

  6. 牛客网 Wannafly挑战赛27 蓝魔法师

    蓝魔法师 链接: https://www.nowcoder.com/acm/contest/215/C 来源:牛客网 题目描述 "你,你认错人了.我真的,真的不是食人魔."--蓝魔 ...

  7. 牛客网 Wannafly挑战赛8 B.LBJX的三角形

    B-LBJX的三角形 链接:https://www.nowcoder.com/acm/contest/57/B来源:牛客网 时间限制:C/C++ 1秒,其他语言2秒空间限制:C/C++ 32768K, ...

  8. 牛客网 Wannafly挑战赛8 A.小Y和小B睡觉觉

    写了一会不想写了... A-小Y和小B睡觉觉 链接:https://www.nowcoder.com/acm/contest/57/A来源:牛客网 时间限制:C/C++ 1秒,其他语言2秒 空间限制: ...

  9. 牛客网 Wannafly挑战赛11 B.白兔的式子-组合数阶乘逆元快速幂

    链接:https://www.nowcoder.com/acm/contest/73/B来源:牛客网 B.白兔的式子   时间限制:C/C++ 1秒,其他语言2秒空间限制:C/C++ 262144K, ...

随机推荐

  1. HTML5 图片宽高自适应,居中裁剪不失真

    一,使用 JS,先上效果图,右图为定死宽高的效果,左图为处理之后的 1, 主要思路是,在图片 onload 后,将图片的宽高比和 div 容器的宽高比进行比较, 2, 从而确定拉伸或者压缩之后是宽还是 ...

  2. APP-1-相关介绍及资料

    一年前研究了下MUI框架,也做了一些简单的功能,将整个过程整理下.. 1.Hbuilder官网 http://www.dcloud.io/ 2.MUI前端框架 http://www.dcloud.io ...

  3. javascript:FileReader对象(读取文件)

    FileReader对象 1.检测浏览器对FileReader的支持 1 if(window.FileReader) { 2 var fr = new FileReader(); 3 // add y ...

  4. Redis学习笔记一(Redis的详细安装及Linux环境变量配置和启动)

     Redis Redis是一个开源的使用ANSI C语言编写.支持网络.可基于内存亦可持久化的日志型.Key-Value数据库,并提供多种语言的API. 我使用的是下面这个版本: 若没有资源的话,我在 ...

  5. 命令行下将磁盘从GPT转换为MBR

    1.在系统提示无法安装的那一步,按住“shift+f10”,呼出“cmd”命令符 2.输入:diskpart,回车 进入diskpart 3.输入:list disk,回车 显示磁盘信息 4.输入:s ...

  6. linux mce的一些相关内容和用户态监控的设计方法

    之所以想起写一点关于mce的东西,倒不是因为遇到mce的异常了,之前遇到过很多mce的异常,内存居多,但没有好好记录下来,写这个是因为参加2018 clk南京会议的一点想法. void __init ...

  7. Jquery select chosen 插件注意点

    <select style="width:200px;" name="carId" data-placeholder="选择车辆牌照" ...

  8. Easy-to-Learn English Travel Phrases and Vocabulary!

    Easy-to-Learn English Travel Phrases and Vocabulary! Share Tweet Share Tagged With: Real Life Englis ...

  9. mycat 多个逻辑库加读写分离

    上3篇笔记主要记录了,读写分离,单库分表,分库分表 这次改动了下,实现了分库分表以及读写分离,基于多个逻辑库,先看配置文件 server.xml <user name="root&qu ...

  10. JAVA字符串格式化-String.format()的使用【转】

    原文地址:https://blog.csdn.net/lonely_fireworks/article/details/7962171 常规类型的格式化 String类的format()方法用于创建格 ...