FZYZOJ-1880 【UFO】水管
P1880 -- 【ufo】水管
时间限制:1000MS 内存限制:131072KB 通过/提交人数:32/100
状态: 标签: 数学问题-组合数学 无 无
Description
lzl:我最近买了一套面积2147483647的房子,可是黄地产开发商sxbk,竟然只给我装了一根水管。
ufo:还不够么?
lzl:鉴于我的增肥计划,我需要n个厨房,每个厨房至少得有1根水管接入吧。
ufo:。。。不要急,你看我给你送来了神奇的水管转换器,可以使水管1变x。
ufo拥有1变2至1变k的转换器各一个,问至少要几个转换器才能满足lzl的增肥需求。
下图是1变4的转换器示意图

Input Format
两个整数n,k
Output Format
满足lzl需求需要用到转换器最少个数,不能满足的输出-1
Sample Input
4 3
Sample Output
2
Hint
对于30%的数据1 ≤ n ≤ 10, 2 ≤ k ≤ 10
对于100%的数据1 ≤ n ≤ 10^18, 2 ≤ k ≤ 10^9
ufo:黄地产给你装下水管没?
lzl:没。。没事,大肚能容天下事 嗝~~~
题解
根据贪心的思想,必须从大到小选用转换器才能得到最优解。不难发现,在这个选用的过程中,每次增加的水管数量构成等差数列,那么可以运用等差数列求和公式。
方法一:在[1,k]中二分答案,用等差数列求和公式判定得到最优解。
方法二:由等差数列求和公式得到一元二次方程,解方程。
代码
#include <cstdio>
#include <iostream>
using namespace std; long long N, K;
long long L, R; double Calc(long long K, long long N) {
N = N - ;
return (double) (K - 0.5) * N - 0.5 * N * N + ;
} int main() {
scanf("%lld%lld", &N, &K);
if (Calc(K, K) < N) {
printf("-1\n");
return ;
}
L = ;
R = K;
while (L <= R) {
long long Mid = (L + R) >> ;
double Sum = Calc(K, Mid);
if (Sum < N) L = Mid + ;
else R = Mid - ;
}
printf("%lld\n", L - );
}
FZYZOJ-1880 【UFO】水管的更多相关文章
- 网络虚拟化中的 offload 技术:LSO/LRO、GSO/GRO、TSO/UFO、VXLAN
offload 现在,越来越多的网卡设备支持 offload 特性,来提升网络收/发性能.offload 是将本来该操作系统进行的一些数据包处理(如分片.重组等)放到网卡硬件中去做,降低系统 CPU ...
- BZOJ 2594: [Wc2006]水管局长数据加强版(kruskal + LCT)
Description SC省MY市有着庞大的地下水管网络,嘟嘟是MY市的水管局长(就是管水管的啦),嘟嘟作为水管局长的工作就是:每天供水公司可能要将一定量的水从x处送往y处,嘟嘟需要为供水公司找到一 ...
- hdu 1880 魔咒词典
题目连接 http://acm.hdu.edu.cn/showproblem.php?pid=1880 魔咒词典 Description 哈利波特在魔法学校的必修课之一就是学习魔咒.据说魔法世界有10 ...
- BZOJ2594: [Wc2006]水管局长数据加强版
题解: 裸LCT+离线+二分+MST... 代码:(几乎摘抄自hzwer) #include<cstdio> #include<cstdlib> #include<cma ...
- 【bz2594】水管局长数据加强版
题意: 给出一张n节点.m条代权无向边的无向联通图 和q个任务 1:询问一条x到y的路径 并使路径上最大权值最小 要求输出路径上最大权值 2:宣布x到y的路径报废题目保证该图永远联通 题解: 这是道凶 ...
- bzoj 2594: [Wc2006]水管局长数据加强版 动态树
2594: [Wc2006]水管局长数据加强版 Time Limit: 25 Sec Memory Limit: 128 MBSubmit: 934 Solved: 291[Submit][Sta ...
- 数据结构(动态树):COGS 27. [WC 2006] 水管局长
27. [WC 2006] 水管局长 ★★★☆ 输入文件:tube.in 输出文件:tube.out 简单对比时间限制:3 s 内存限制:128 MB [问题描述 ] SC 省 MY ...
- BZOJ 2594: [Wc2006]水管局长数据加强版( LCT )
离线然后就是维护加边的动态MST, Link cut tree秒掉..不过我写+调了好久...时间复杂度O(NlogN + MlogM) ------------------------------- ...
- BZOJ 1880: [Sdoi2009]Elaxia的路线( 最短路 + dp )
找出同时在他们最短路上的边(dijkstra + dfs), 组成新图, 新图DAG的最长路就是答案...因为两人走同一条路但是不同方向也可以, 所以要把一种一个的s,t换一下再更新一次答案 ---- ...
随机推荐
- windows 20003 扩展安装后不成功的原因
windows扩展如果安装不成功(PHP扩展)很大的可能就是那个DLL的权限不够.需要分配:AdministratorAuthenticater UsersIIS_WPGSYSTEMUsers
- Scanner中next()和nextline()读取字符串方法和区别
在实现字符窗口的输入时,我个人更喜欢选择使用扫描器Scanner,它操作起来比较简单.在写作业的过程中,我发现用Scanner实现字符串的输入有两种方法,一种是next(),一种nextLine(), ...
- Objective-C总Runtime的那点事儿(一)消息机制【转】
RunTime简称运行时.就是系统在运行的时候的一些机制,其中最主要的是消息机制.对于C语言,函数的调用在编译的时候会决定调用哪个函数( C语言的函数调用请看这里 ).编译完成之后直接顺序执行,无任何 ...
- SGU 124.Broken line
时间限制:0.25s 空间限制:4M 题意: 给出n条线段和一个点,保证所有线段平行X轴或Y,并且闭合成一个多边形.判断这个点的位置是在多边形上,还是多边形内,还是多边形外. solution: 由于 ...
- SGU 164.Airline(结论题)
时间限制:0.25s 空间限制:4M 题意: 在n(1<=n<=200)个点的无向完全图中,有m种不同的边.现在从中选择不超过(m+1)/2种边,使得任意两点可以通过不超过3条边互相到达. ...
- xml程序 个人练习1
package cn.gdpe.xml2; import java.io.File;import java.io.FileOutputStream;import java.util.List; imp ...
- Linux nohup命令详解
nohup命令及其输出文件 ...
- 为什么我们不喜欢用富UI控件
我们对于理解一般意义的抽象关系并没有问题,但如第一部分使用Entity Framework 时说明的,事实恰好相反.我们还喜欢在交付应用程序时利用抽象关系,比如使用Azure等云服务.在这两种情况下, ...
- 人人网FED CSS编码前端开发规范
文件相关规范 1.文件名必须由小写字母.数字.中划线-组成 2.文件必须用utf-8编码 3.文件引入可通过外联或内联方式引入: 3.1 外联方式:<link rel=”stylesheet” ...
- WPF WebBrowser 不可见问题的解析[转]
问题概述: 1.在Xaml中加入WebBrowser(不论是WPF中的控件,还是Winform中的控件) 2.设置Window Background="Transparent" A ...