二分 + 模拟 - Carries

Carries

Problem‘s Link



Mean:

给你n个数,让你计算这n个数两两组合相加的和进位的次数.

analyse:

脑洞题.

首先要知道:对于两个数的第k位相加会进位的条件是:a%(10^k)+b%(10^k)>=10^k.

想到这一点后就简单了,枚举每一位(最长9位),然后每个数都模10^k,然后排序二分.

排序后,如果b[i]+b[j]>=k,那么i~j-1这段也满足b[i]+b[j]>=k.

Time complexity: O(n*logn)

view code

时间: 2024-08-10 15:11:47

二分 + 模拟 - Carries的相关文章

uvalive 4254 Processor处理器 (二分模拟+贪心)

 有n个任务,每个任务有ri,di,wi;代表任务的[ri,di]代表可以做这个任务的时间区间,而wi代表这个任务的工作量;现在有有个处理器,如果它的执行速度是s,则完成第i个任务所需时间wi/s;要求算出处理器执行过程中最大速度的最小值 思路很简单二分,但如何模拟是难点,可以模拟处理器每一秒的工作,对于每一秒来说,用优先队列储存当前时间下可以处理的任务,优先处理d小的,如果处理完了,那么处理下一个任务,如果没处理完,时间加一. #include<cstdio> #include<c

zoj4062 Plants vs. Zombies 二分+模拟(贪心的思维)

题目传送门 题目大意:有n个植物排成一排,标号为1-n,每株植物有自己的生长速度ai,每对植物浇一次水,该株植物就长高ai,现在机器人从第0个格子出发,每次走一步,不能停留,每一步浇一次水,总共可以走m步,问最矮的植物最高是多少. 思路: 一般此类最小值最大问题都是二分,此题显然也是可以二分植物的高度的. 确定某一个高度后,也确定了每个植物需要浇几次水,而对于一株植物来说,应当尽可能的在这株植物和后面那个格子来回走,是这株植物迅速超过最低高度(这样的走法是最优的,因为可以想象,如果往后走很多步再

二分三角形的时候尤其需要注意!!! HDU 5115 二分+模拟

题目大意:http://blog.csdn.net/snowy_smile/article/details/49535301 思路:分类讨论,分别在[1,2].(2,3).[3,4).[4,1]相遇,然后再特判v1和v2的大小关系即可. 然后特别需要注意在(2,3)时候的二分了,因为我们二分非斜边的话,非斜边的增长速率大于斜边的增长速率 //看看会不会爆int!数组会不会少了一维! //取物问题一定要小心先手胜利的条件 #include <bits/stdc++.h> using namesp

CodeForces - 670D2 Magic Powder - 2 (二分&amp;模拟)

CodeForces - 670D2 Magic Powder - 2 Time Limit: 1000MS   Memory Limit: 262144KB   64bit IO Format: %I64d & %I64u Submit Status Description The term of this problem is the same as the previous one, the only exception - increased restrictions. Input Th

Codeforces 1011C Fly(二分+模拟)

题意: 是有n个星球,1代表地球,然后输入一个m表示火箭的重量,然后输入了两组n个数,第一组表示在每个星球起飞时消耗一吨燃料的质量数,a[i]就表示每a[i]吨就要消耗1吨燃料,第二组就表示在每个星球降落时消耗一吨燃料的质量数,然后问当火箭从1飞到2到3....到n星球后又返回1星球最少需要加多少燃料. 思路: 二分答案,注意double二分的写法,以及如何控制出口 代码: #include<iostream> #include<iomanip> #include<cstdi

[ 题解 ] [ 二分+模拟 ] E. Convention

http://codeforces.com/group/NVaJtLaLjS/contest/238203/problem/E 题意: 农夫的N只牛会在N[i]时间到达机场,农夫准备了M辆大巴去接.每辆大巴能载C只牛.(MC≥N) 问对于一只牛最小的最长等待时间是多少. 示例: Input: 6 3 2 1 1 10 14 4 3 Output: 4 你要明确这里要搜索什么.既然题目问的是等待时间,我们就搜索这个等待时间:不要想着怎样给这N个数据套M个区间,太复杂了. 搜索用二分,109不是开玩

1010. Radix (25)(进制 + 二分 + 模拟)

Given a pair of positive integers, for example, 6 and 110, can this equation 6 = 110 be true? The answer is "yes", if 6 is a decimal number and 110 is a binary number. Now for any pair of positive integers N1 and N2, your task is to find the rad

codeforces 460C - Present 二分加模拟

代码有详细解释,二分模拟寻找结果,贪心选择从哪开始浇花,原则就是遇到需要浇花的就浇,至于w可以用线段树来维护线段,但也可以用一个数组标记一下,二分总是有很多问题啊,所以写很多输出用来调试,jiong /************************************************************************* > File Name: 460c.cpp > Author: yang > Mail:[email protected] > Crea

Boxes and Balls UVALive - 7500(练习赛爆零)

原因: 自身: 1.自己并没有考虑过精度所带来的问题. 2.一定要自己读题,独立思考,末被队友带偏(矛盾出真理). 3.加强自身基础,提高自身实力. 队伍: 1.队友缺乏独立思考,需要加强. 题目描述: 给你n个球,求在有限次数变化中,球的变化最后稳定在一种状态. 思路: 打表找过规律后发现,稳定状态下球的个数是1,2,3,6,10,15,21.....是以等差数列的前n项和.s=(n+1)*n/2; 思路一:二分模拟(想到了,但是深度不够),没有尝试. 思路二:借二元一次方程.(x+1)*x-