上一页 1 ··· 9 10 11 12 13 14 15 16 17 ··· 22 下一页
摘要: POJ 3579 题意 双重二分搜索:对列数X计算∣Xi – Xj∣组成新数列的中位数 思路 对X排序后,与X_i的差大于mid(也就是某个数大于X_i + mid)的那些数的个数如果小于N / 2的话,说明mid太大了。以此为条件进行第一重二分搜索,第二重二分搜索是对X的搜索,直接用lower_b 阅读全文
posted @ 2017-09-10 12:26 demianzhang 阅读(715) 评论(0) 推荐(0) 编辑
摘要: POJ 2976 题意 给n组数据ai,bi,定义累计平均值为: 现给出一个整数k,要求从这n个数中去掉k个数后,最大累计平均值能有多大?(四舍五入到整数) 思路 取n−k个数,使得累计平均值最大。 定义C(x)表示能否取得n−k个数,使得累计平均值≥x。然后二分搜索最大的x。 可以这样判断可行性: 阅读全文
posted @ 2017-09-09 15:42 demianzhang 阅读(638) 评论(0) 推荐(0) 编辑
摘要: POJ 2456 题意 农夫约翰有N间牛舍排在一条直线上,第i号牛舍在xi的位置,其中有C头牛对牛舍不满意,因此经常相互攻击。需要将这C头牛放在离其他牛尽可能远的牛舍,也就是求最大化最近两头牛之间的距离。 思路 二分搜索,现将牛舍排序,然后定义C(d),表示可安排的C头牛最近距离不小于d。 #inc 阅读全文
posted @ 2017-09-08 22:42 demianzhang 阅读(310) 评论(0) 推荐(0) 编辑
摘要: 有N条绳子,它们长度分别为Li。如果从它们中切割出K条长度相同的绳子的话,这K条绳子每条最长能有多长?答案保留小数点后2位。 二分搜索。这里要注意精度问题,代码中有详细说明;还有printf的%.2f会四舍五入的,需要*100再取整以截取小数点后两位。 #include<stdio.h> #incl 阅读全文
posted @ 2017-09-08 16:10 demianzhang 阅读(417) 评论(0) 推荐(0) 编辑
摘要: 题目描述 现在城市有N个路口,每个路口有自己的编号,从0到N-1,每个路口还有自己的交通控制信号,例如0,3表示0号路口的交通信号每3个时刻变化一次,即0到3时刻0号路口允许通过,3到6时刻不允许通过,而6到9时刻又允许通过;以此类推,所有路口的允许通行都从时刻0开始。同时城市中存在M条道路将这N个 阅读全文
posted @ 2017-09-04 10:42 demianzhang 阅读(495) 评论(0) 推荐(0) 编辑
摘要: 第一题:H国的身份证号码I 题意:一个N位的正整数(首位不能是0)。每位数字都小于等于K,并且任意相邻两位数字的乘积也小于等于K。按从小到大的顺序输出所有合法的N位号码,每个号码占一行。 思路:dfs #include<iostream> #include<cstdio> #include<algo 阅读全文
posted @ 2017-08-29 23:52 demianzhang 阅读(181) 评论(0) 推荐(0) 编辑
摘要: 数位dp,主要用来解决统计满足某类特殊关系或有某些特点的区间内的数的个数,它是按位来进行计数统计的,可以保存子状态,速度较快。数位dp做多了后,套路基本上都差不多,关键把要保存的状态给抽象出来,保存下来。 简介: 顾名思义,所谓的数位DP就是按照数字的个,十,百,千……位数进行的DP。数位DP的题目 阅读全文
posted @ 2017-08-28 00:57 demianzhang 阅读(271) 评论(0) 推荐(0) 编辑
摘要: 题意: 思路: 对于每个幂次方,将幂指数的二进制形式表示,从右到左移位,每次底数自乘,循环内每步取模。 #include <cstdio> typedef long long LL; LL Ksm(LL a, LL b, LL p) { LL ans = 1; while(b) { if(b & 1 阅读全文
posted @ 2017-08-22 14:52 demianzhang 阅读(248) 评论(0) 推荐(0) 编辑
摘要: 题意:给出a和p,判断p是否为合数,且满足a^p是否与a模p同余,即a^p%p与a是否相等 算法:筛法打1万的素数表预判p。再将幂指数的二进制形式表示,从右到左移位,每次底数自乘。 #include <cstdio> #include <cstring> typedef long long LL; 阅读全文
posted @ 2017-08-22 14:47 demianzhang 阅读(296) 评论(0) 推荐(0) 编辑
摘要: 题意: H_Number 是一个比4的倍数多1的数,即4n + 1。H_Number 分为 H_Prime 和 H_Comosite。其中 H_Prime 仅能由1×h组成,而 H_Composite 除了1和h可有多个因子。H_Semi_Prime 表示仅有两个 H_Prime 因子(除了1和本身 阅读全文
posted @ 2017-08-21 23:33 demianzhang 阅读(286) 评论(0) 推荐(0) 编辑
上一页 1 ··· 9 10 11 12 13 14 15 16 17 ··· 22 下一页