JZOJ__Day 10:【普及模拟】【USACO】横幅
题目描述
Bessie结束了国外长途旅游回来。为了迎接她的归来,Farmer John准备在牧场给她挂起一个"Welcome Home"的横幅。横幅会挂在两个柱子间的长度介于L1..L2的金属丝上。(1 <= L1 <= L2; L1 <= L2 <= 1,500)。牧场是一个W×H 的矩阵 (1 <= W <= 1,000; 1 <= H <= 1,000)并且FJ在每个坐标点上都树立起了柱子,在这 (W + 1) * (H + 1)个柱子上,FJ要选两个连上金属丝以挂上横幅。 FJ不希望在横幅之间有任何杂物,就是说在这条金属丝下面没有别的柱子。 FJ需要你编程帮他算出有多少种挂横幅的可能。但是这个数据很大,也许32位整数都放不下。例如如下的牧场地图: W = 2 H = 1 *** *** 而横幅长度为2和3之间。这个牧场共有 (2+1) * (1+1) = 6个点以及有(6 take 5) = (6*5)/(2*1) = 15 种配对方法
(0,0)-(0,1) (0,0)-(2,1) (0,1)-(2,1) (1,1)-(2,0)
(0,0)-(1,0) (0,1)-(1,0) (1,0)-(1,1) (1,1)-(2,1)
(0,0)-(1,1) (0,1)-(1,1) (1,0)-(2,0) (2,0)-(2,1)
(0,0)-(2,0) (0,1)-(2,0) (1,0)-(2,1)
在这之中,只有四种是可以配对的
始位 末位 长度 始位 末位 长度(0,0)-(2,0) 2.00 (0,1)-(2,0) 2.24(0,0)-(2,1) 2.24 (0,1)-(2,1) 2.00
但在这四种之中,(0,0)-(2,0)和(0,1)-(2,1)都不符合“没有杂物”的要求,所以这个样例中只有2种结果。
输入
一行,4个整数W, H, L1和 L2
输出
一行,表示可能的方案数。
样例输入
2 1 2 3
样例输出
2
分析
找规律+数学:
①我们手动推理发现,如果矩阵的长宽互质,那么它们的任意一条对角线都不经过其内的任意一个整数坐标点,即不经过柱子,所以我们可以枚举枚举矩形长i宽j的可能性,然后判断它们的gcd是否为1。
如果为1则
长宽互质,所以其对角线是不经过整数坐标点的,所以可能性+1,
然后乘上(w-i+1)*(h-j+1),因为在矩形中有这么多个这种小矩形,就有这么多的可能性
还要乘上2,因为矩形的对角线有2条
②因为上面仅仅只是处理了对角线,但是,我们要考虑!
l1=1的情况,因为任意2个柱子间距为1,这,也是一种情况!!!!
因此这时候我们还要给答案加上h*(w+1)+w*(h+1),因为有这么多个间距
时间复杂度:O((w+1)*(h+1))
程序:
var
i,j,w,h,e:longint;
l1,l2,k:real;
ans:int64;function work(x,y:longint):longint;
beginif x=0 then exit(y) else exit(work(y mod x,x));
end;beginreadln(w,h,l1,l2);ans:=0;for i:=1 to w+1 dofor j:=1 to h+1 dobeginif i<=j then e:=work(i,j) else e:=work(j,i);if e=1 thenbegink:=sqrt(sqr(i)+sqr(j));if (k>=l1) and (k<=l2) then ans:=ans+(w-i+1)*(h-j+1)*2;end;end;if l1=1 then ans:=ans+h*(w+1)+w*(h+1);write(ans);
end.
转载于:https://www.cnblogs.com/YYC-0304/p/9500077.html
JZOJ__Day 10:【普及模拟】【USACO】横幅相关推荐
- jzoj P1135 【2011.12.10普及模拟】泽泽在中国
题目描述 众所周知,在中国有个地方叫"万里长城". 泽泽一天后山玩,在捉蟋蟀的时候,忽然看见一个奇怪的洞.泽泽好奇,就钻了进去,结果-- 泽泽来到中国万里长城上.长城的城墙很高,泽 ...
- 【2011.12.10普及模拟】泽泽在巴西
题目描述 泽泽帮助了英国某街道尽量减少酸雨的伤害,街道办主任非常感激他,就把他领到一扇门前,告诉他这扇门能通往好地方,具体好到什么程度要看泽泽人品.泽泽毫不犹豫地走了进去-- 泽泽来到了足球王国--巴 ...
- 【2011.12.10普及模拟】泽泽在埃及题解
题目描述 泽泽已52:0的比分输了球,被足球流氓打了一顿,扔进了窨井里-- 出来的时候,泽泽已经在埃及了. 滚滚的黄沙在周围飞舞,没有一样生物在这里栖息.泽泽不想就挂在这里.忽然,泽泽被风沙遮住的眼睛 ...
- CADD课程学习(10)-- 模拟不同体系与蛋白-蛋白相互作用(ZDOCK)
CADD课程学习(10)-- 模拟不同体系与蛋白-蛋白相互作用(ZDOCK) 生物体的生理功能主要由细胞中的蛋白质控制和调节.其中,多数蛋白质是作为蛋白质复合物中的一部分参与细胞的代谢过程.因此,研究 ...
- STM32三菱FX1N,FX2N,FX3U,PLC方案 可以直接上传下载梯形图,在线监控,具有称重功能,数码管功能,可以做到10路模拟量
STM32三菱FX1N,FX2N,FX3U,PLC方案 可以直接上传下载梯形图,在线监控,具有称重功能,数码管功能,可以做到10路模拟量,CAN总线扩展功能,4路高速脉冲功能,支持2至12轴相对位置和 ...
- 2018.10.9模拟赛
2018.10.9模拟赛 T1 trade 正解:贪心 据说lyd讲过但并没有印象QAQ,考场上现推浪费了不少时间 其实就开个小根堆,每次把堆顶取出来看它是不是比当前的 a[i]a[i]a[i] 小, ...
- JZOJ__Day 10:【普及模拟】【USACO】iCow播放器
题目描述 被无止境的农活压榨得筋疲力尽后,Farmer John打算用他在MP3播放器市场新买的iCow来听些音乐,放松一下.FJ的iCow里存了N(1 <= N <= 1,000)首曲子 ...
- JZOJ__Day 10:【普及模拟】【USACO】山峰暸望
题目描述 一天,Bessie在眺望美丽的威斯康星的群山的时候,她突然产生了疑问:哪座山是最宽的捏?她决定在地平线上,利用她的新发明的山峰高度测量仪依次做N (1 <= N <= 10,00 ...
- JZOJ__Day 10:【普及模拟】【USACO】贝茜的晨练计划
题目描述 奶牛们打算通过锻炼来培养自己的运动细胞,作为其中的一员,贝茜选择的运动方式是每天进行N(1 <= N <= 10,000)分钟的晨跑. 在每分钟的开始,贝茜会选择下一分钟是用来跑 ...
最新文章
- centos安装及网络配置
- Hibernate:根据配置文件自动生成表结构的2种方式
- Spring Data(二)查询
- 大数据WEB阶段(六)MySql 下载、安装、卸载与配置
- centos内核编译与其签名机制
- Android 获取光线强弱,开启闪光灯,关闭闪光灯
- minwindow java_java中setMinWindowLayout()是什么呀?
- python hack库_常用的Python库
- 出现身份验证错误 要求的函数不受支持_学习使用Kotlin创建Android应用程序第3部分:身份验证登录...
- java 数据库mysql_java是怎么连接mysql数据库的
- 寻路的几种算法_Godot游戏开发实践之二:AI之寻路新方式
- linux下部署jdk+Tomcat
- Establishing SSL connection without server's ident
- 数据结构排序算法思路总结
- 关于Xcode的Other Linker Flags
- android listview item字体,改变listview中item选中时文字的颜色
- java 缓存队列_双缓冲队列的java实现
- 一文带你吃透黑盒测试跟白盒测试的区别
- 防火墙结构之双重宿主主机结构
- 1.一条SQL语句如何执行