题目链接

戳我

题目出处

菩萨蛮·南园满地堆轻絮

                                            温庭筠

南园满地堆轻絮,愁闻一霎清明雨。雨后却斜阳,杏花零落香。

无言匀睡脸,枕上屏山掩。时节欲黄昏,无憀独倚门。

\(Solution\)

这个可以二分一下,再贪心的构造式子,如果满足则\(r\)变小,反之\(l\)变大很好理解的。

\(Code\)

#include<bits/stdc++.h>
#define int long long
#define rg register
#define file(x) freopen(x".in","r",stdin);freopen(x".out","w",stdout);
using namespace std;
int read(){
int x=0,f=1;char c=getchar();
while(c<'0'||c>'9') f=(c=='-')?-1:1,c=getchar();
while(c>='0'&&c<='9') x=x*10+c-48,c=getchar();
return f*x;
}
int a[5000010],b[5000010];
int n,Sa,Sb,Sc,Sd,mod,maxx;
int calc(int x){
return (((Sa*x%mod*x%mod*x%mod+Sb*x%mod*x%mod)%mod+Sc*x%mod)%mod+Sd)%mod;
}
bool check(int x){
for(int i=1;i<=n;i++)
b[i]=a[i];
for(int i=1;i<=n;i++){
if(b[i]+x<b[i-1]) return 0;
if(b[i]<b[i-1]) b[i]=b[i-1];
else b[i]=max(b[i-1],b[i]-x);
}
return 1;
}
main(){
n=read(),Sa=read(),Sb=read(),Sc=read(),Sd=read(),maxx=a[1]=read(),mod=read();
for(int i=2;i<=n;i++)
a[i]=(calc(a[i-1])+calc(a[i-2]))%mod,maxx=max(maxx,a[i]);
int l=0,r=maxx,minx=2147483647;
while(l<=r){
int mid=(l+r)>>1;
if(check(mid)) r=mid-1,minx=min(minx,mid);
else l=mid+1;
}
printf("%lld",minx);
return 0;
}

「HEOI2014」南园满地堆轻絮的更多相关文章

  1. 【BZOJ】【3613】【HEOI2014】南园满地堆轻絮

    思路题 考试结束前5.6min的时候想到……但是写挂了QAQ 其实就是(差值最大的逆序对之差+1)/2; 找逆序对其实维护一个max直接往过扫就可以了……因为逆序对是前面的数大于后面的数…… 正确性显 ...

  2. BZOJ_3613_[Heoi2014]南园满地堆轻絮_二分答案

    BZOJ_3613_[Heoi2014]南园满地堆轻絮_二分答案 Description 小 Z 是 ZRP(Zombies’ Republic of Poetry,僵尸诗歌共和国)的一名诗歌爱好者, ...

  3. 【BZOJ3613】[HEOI2014]南园满地堆轻絮(贪心)

    [BZOJ3613][HEOI2014]南园满地堆轻絮(贪心) 题面 BZOJ 洛谷 题解 考虑二分的做法,每次二分一个答案,那么就会让所有的值尽可能的减少,那么\(O(n)\)扫一遍就好了. 考虑如 ...

  4. 3613: [Heoi2014]南园满地堆轻絮

    3613: [Heoi2014]南园满地堆轻絮 Time Limit: 50 Sec Memory Limit: 256 MB Submit: 827 Solved: 534 [Submit][Sta ...

  5. [HEOI2014]南园满地堆轻絮

    [HEOI2014]南园满地堆轻絮 BZOJ luogu 二分答案贪心check 首先b[1]最小一定优 之后就贪心的最小化b[i]就行 #include<bits/stdc++.h> u ...

  6. [luogu] P4105 [HEOI2014]南园满地堆轻絮 (贪心)

    P4105 [HEOI2014]南园满地堆轻絮 题目描述 小 Z 是 ZRP(Zombies' Republic of Poetry,僵尸诗歌共和国)的一名诗歌爱好者,最近 他研究起了诗词音律的问题. ...

  7. NC20012 [HEOI2014]南园满地堆轻絮

    NC20012 [HEOI2014]南园满地堆轻絮 题目 题目描述 小 Z 是 ZRP(Zombies' Republic of Poetry,僵尸诗歌共和国)的一名诗歌爱好者,最近他研究起了诗词音律 ...

  8. [BZOJ3613][Heoi2014]南园满地堆轻絮 二分答案

    Description 小 Z 是 ZRP(Zombies’ Republic of Poetry,僵尸诗歌共和国)的一名诗歌爱好者,最近 他研究起了诗词音律的问题.   在过去,诗词是需要编成曲子唱 ...

  9. BZOJ3613 南园满地堆轻絮-二分法

    http://www.lydsy.com/JudgeOnline/problem.php?id=3613 //话说BZOJ终于修好了... Description 小 Z 是 ZRP(Zombies' ...

随机推荐

  1. centos7.3给搭建SVN服务器

    centos7.3给搭建SVN服务器 1 安装svnserver yum install subversion 2 查看版本 svnserve --version 3 创建版本库 3.1 运行以下命令 ...

  2. JSF - Access Managed-Bean in a servlet

    When you have to access your Managed Bean in a servlet, it depends on the scope you set for the Bean ...

  3. MySQL 触发器示例

    简介: MySQL 触发器 这次实验是在一台 MySQL Slave 上进行的,事实证明:从库添加数据库.表.插入.删除数据等,不会导致主从失败. 一.创建实验数据库.表 mysql > cre ...

  4. java中getAttribute和getParameter的区别

    getAttribute表示从request范围取得设置的属性,必须要先setAttribute设置属性,才能通过getAttribute来取得,设置与取得的为Object对象类型 getParame ...

  5. 九度oj-1533 最长上升子序列 (LIS)

    http://ac.jobdu.com/problem.php?pid=1533 题目描述: 给定一个整型数组, 求这个数组的最长严格递增子序列的长度. 譬如序列1 2 2 4 3 的最长严格递增子序 ...

  6. Ubuntu开机自动挂载分区

    虽然我基本上都是使用Linux的,但是仍然有些时候需要切换到Windows(双系统),如果所有的分区都使用ext4等Linux分区格式,则在Windows下访问十分不方便. 因此,我一般会将一些两个系 ...

  7. 根据车辆品牌获取品牌所属公司,车标logo,创建年份等基本信息

    接口:http://api.besttool.cn/?c=Car&a=brand 请求方式:post 参数: appid 请联系博主QQ987332767获取,注明车标接口,测试appid: ...

  8. 微信小程序-滑动视图注意事项

    真的得吐槽下微信的开发文档,一点点都不详细的好吗. <!--垂直滚动,这里必须设置高度--> <scroll-view scroll-y="true" style ...

  9. Kafka学习整理五(Consumer配置)

    Property Default Description group.id   用来唯一标识consumer进程所在组的字符串,如果设置同样的group id,表示这些processes都是属于同一个 ...

  10. rtx自定义面板不更新

    服务器和客户端自定义面的文件分别在下列xml中. 程序员的基础教程:菜鸟程序员