题意:

一个长度为n的序列X,Xk = (a*k+b)%mod,找出一个最长的子序列{Y},使得任意两个元素之和都不大于L,求出子序列的长度。

分析:

这是我做过的最卡的题,时间卡到不行。

时限是2000MS,n的范围是2*10^7,想了一个O(n)的方法,还脑残的把X序列全存数组里了,交了一发MLE。

然后发现根本不需要存(蠢哭)。

算法是木有错的,比L/2小的都算,然后如果比L/2大的里面最小的加上比L/2小的里面最大的也满足条件的话,再加上一个。

可能是常数大了的缘故,写完代码,若干次尝试,修改为如下地方后,终于卡过,都要哭了。。。

(1)全用__int64

(2)计算Xi的时候要强制转换(完全搞不懂状况)

(3)不用min()和max()函数

(4)头文件删的只剩stdio.h,没错,是stdio.h,不是cstdio。(妈蛋)

代码:

#include<stdio.h>int main() {__int64 i,n,l,a,b,mod,mid,ans,maxn,minn,x;while(~scanf("%I64d%I64d%I64d%I64d%I64d",&n,&l,&a,&b,&mod)) {mid = l / 2;ans = 0;maxn = -1;minn = 9999999999999LL;for(i=1; i<=n; i++) {x=((__int64)((__int64)a*i+b)%mod);if(x <= mid) {ans ++;if(maxn<x) maxn=x;} else {if(minn>x)  minn=x;}}if(maxn+minn <= l) ans++;printf("%I64d\n",ans);}return 0;
}

HDU_4379_The More The Better相关推荐

最新文章

  1. CodeForces 375D Tree and Queries
  2. 小技巧-取消新版outlook中应用商店加载项
  3. 虚拟化入门:用虚拟机安装RHEL 5(下)
  4. 为最快动脉线诊断 铁科院联合第四范式完成高铁智能化巡检应用
  5. apache camel 相关配置_Apache Camel的Java编程入门指南
  6. 数据结构python吕云翔_《数据结构》吕云翔编著第1章绪论习题解答
  7. java 大数实现_Java中的大数类简单实现
  8. 7.13 Python基础语法
  9. Tsinsen A1517. 动态树 树链剖分,线段树,子树操作
  10. php 字符串过滤指定字符,php字符串过滤与替换小结
  11. cad多个窗口并排显示_高版本CAD如何显示阵列窗口?
  12. 阿里PEGASUS笔记:PEGASUS : Bridging Polynomial and Non-polynomial Evaluations in Homomorphic Encryption
  13. jpa 动态查询条件 数组_JPA使用Specification构建动态查询
  14. 【PAT】PAT那些破事
  15. cent os 挂盘
  16. Github pages个人域名添加SSL
  17. TVM学习(一)安装TVM Ubuntu16.04安装TVM0.8+clang-llvm12.0
  18. 计算机连接华为路由器5g变慢,觉得家里网速慢 华为移动路由5GCPEPro3秒一集高清电视剧了解下?...
  19. mysql 公历变农历_SQLServer公历转农历函数(1900年-2049年)
  20. 冰雪奇缘--用爱酿就一部经典

热门文章

  1. Linux系统如何优化
  2. 如果实现类似微信附近的人功能
  3. rails 评论/回复插件 acts_as_commentable_with_threading
  4. ffmpeg使用,读取码率和写入码率的注意事项
  5. 开源情报分析(OSINT)CTF社工类2万字题详细教程,请不要利用本文章做不道德的事,后果概不负责
  6. 在麒麟V10服务器上编译安装Storm
  7. 无法启动此程序因为计算机丢失dtlui,用360重装大师重装系统后开机提示计算机中丢失DTLUI.dll? 爱问知识人...
  8. 疼痛的脑成像:最新进展
  9. ESP8266 + MAX7219 做一个简易的自动同步的倒计时时钟
  10. Java面试宝典(2019版)