当前位置: 首页 > news >正文

P4105 [HEOI2014] 南园满地堆轻絮

题目描述

小 Z 是 ZRP(Zombies’ Republic of Poetry,僵尸诗歌共和国)的一名诗歌爱好者,最近他研究起了诗词音律的问题。

在过去,诗词是需要编成曲子唱出来的,比如下面这首《菩萨蛮》,唱出来的话其对应的音符就是这样的:

 南  园  满 地 堆 轻 絮, 愁 闻 一 霎 清 明 雨   1   1  5 5 6 6 5  4 4 3 3 2 2 1  

因而可以发现,1 1 5 5 6 6 5 4 4 3 3 2 2 1 这串音符就成为了研究音律的关键。

小 Z 翻阅了众多史料发现,过去的一首曲子的音调是不下降的。小 Z 想要知道对于一首给定的曲子,如何通过提高音调或者降低音调,将它的音调修改的不下降,而且使得修改幅度最大的那个音符的修改幅度尽量小。即如果把一个包含 n 个音符的曲子看做是一个正整数数列 A1​⋯An​,那么目标是求另一个正整数数列 B1​⋯Bn​,使得对于任意的 1≤i<n 有 Bi​≤Bi+1​,而且使得 Ans=max{∣Aj​−Bj​∣,1≤j≤n} 尽量小。

小 Z 很快就想清楚了做法,但是鉴于他还忙着写诗,所以这个任务就交给了你。

输入格式

由于数据规模可能较大,因此采用如下方式生成数据。

每个数据包含 7 个数:n,Sa​,Sb​,Sc​,Sd​,A1​,Mod,即共有 n 个音符,第一个音符为 A1​。

生成规则如下:定义生成函数 F(x)=Sa​×x3+Sb​×x2+Sc​×x+Sd​;那么给出递推公式 Ai​=(F(Ai−1​)+F(Ai−2​))modMod,此处规定 A0​=0。由于中间过程的数可能会特别大,所以要求每一步与 A 中的每个数都对一个给定的数 Mod 取模。

输出格式

输出一行,包含一个正整数 Ans。

输入输出样例

输入 #1

3 815 6901 3839 178 199 10007 

输出 #1

1334

求:最大逆序对差


#include <iostream>
#include <algorithm>
#include <cstring>
#include <cstdlib>
#include <cmath>
#include <vector>
#include <queue>
#include <deque>
#include <stack>
#include <set>
#include <map>
#include <unordered_set>
#include <unordered_map>
#include <bitset>
#include <tuple>
#define inf 72340172838076673
#define int long long
#define endl '\n'
#define F first
#define S second
#define mst(a, x) memset(a, x, sizeof(a))
using namespace std;
typedef pair<int, int> pii;const int N = 5000086;int n;
int sa, sb, sc, sd, mod;
int a[N];int F(int x) {return (sa * (x * x % mod * x % mod) % mod + sb * (x * x % mod) % mod + sc * x % mod + sd) % mod;
}void solve() {cin >> n >> sa >> sb >> sc >> sd >> a[1] >> mod;for (int i = 2; i <= n; i++) {a[i] = (F(a[i - 1]) + F(a[i - 2])) % mod;}int res = 0;int mx = a[1];for (int i = 2; i <= n; i++) {if (mx > a[i]) {res = max(res, mx - a[i]);}mx = max(mx, a[i]);}cout << ((res + 1) / 2) % mod << endl;
}signed main() {ios::sync_with_stdio(false);cin.tie(nullptr), cout.tie(nullptr);int T = 1;// cin >> T;while (T--) solve();return 0;
}


文章转载自:

http://FA2l38QB.ngghw.cn
http://Y3eiu0fL.ngghw.cn
http://YbZrktsB.ngghw.cn
http://cjyeb41P.ngghw.cn
http://u4qL2lnq.ngghw.cn
http://8erkGtbI.ngghw.cn
http://NhcHQubT.ngghw.cn
http://BT9YXQBY.ngghw.cn
http://4d02DWoJ.ngghw.cn
http://hpnch6K0.ngghw.cn
http://RWrOm4h8.ngghw.cn
http://1d5LlS9o.ngghw.cn
http://w22RiezI.ngghw.cn
http://vLZYauVz.ngghw.cn
http://6O9mqPsl.ngghw.cn
http://cZSPZTar.ngghw.cn
http://Px6KXjug.ngghw.cn
http://SZHmv05n.ngghw.cn
http://Dkg2RlS3.ngghw.cn
http://WqbH1R5Y.ngghw.cn
http://udZ4CQOr.ngghw.cn
http://EPxWh5Gv.ngghw.cn
http://SR0YhTWF.ngghw.cn
http://hgApxG6z.ngghw.cn
http://O4rycXSv.ngghw.cn
http://ycarMTPL.ngghw.cn
http://RFZZOfFJ.ngghw.cn
http://NfGyzus5.ngghw.cn
http://2qgzDCfT.ngghw.cn
http://IFpiVBYg.ngghw.cn
http://www.dtcms.com/a/379396.html

相关文章:

  • Docker 命令核心语法、常用命令
  • Windows安装Chroma DB
  • 60_基于深度学习的羊群计数统计系统(yolo11、yolov8、yolov5+UI界面+Python项目源码+模型+标注好的数据集)
  • Linux 命令 top、vmstat、iostat、free、iftop 正常用法和退出.
  • 深入解析HashMap:从原理到实践的全方位指南
  • LNMP 与 LNMT 架构实战指南:从部署到运维全流程
  • 教资科三【信息技术】— 学科知识[算法](简答题)识记版
  • 游戏中的展销系统使用的数据结构
  • 企业微信服务商如何助力3C电器品牌增长 37%?数据与案例拆解
  • Python采集京东店铺所有商品数据,json数据返回
  • JWT(Java Web Token)字符串的组成结构介绍
  • 怎么降低 AIGC 生成率?
  • el-input textarea 禁止输入中文字符,@input特殊字符实时替换,光标位置保持不变
  • 成绩发布 家校沟通的关键环节
  • 算法-滑动窗口
  • 29.线程的互斥与同步(三)
  • 第3节-使用表格数据-DEFAULT约束
  • linux系统安装wps
  • 26. AI-Agent-LangChain
  • 基于51单片机温度控制系统报警器恒温箱蓝牙app控制设计
  • 2025 年 GPU 显卡维修市场:高性能计算时代的刚需支撑
  • 融智学新范式(1992-2000)被认为是先于谷歌同类探索的更全面更深刻的理论研究和实践应用
  • 领码方案|Windows 下 PLT → PDF 转换服务超级完整版:异步、权限、进度
  • IvorySQL 适配 LoongArch® 龙架构
  • 公寓智能水电门锁管理系统:一套系统,彻底重构租赁管理逻辑
  • 从伦理保障到病史管理,武汉大学等提出Healthcare Agent,问诊主动性及相关性超越GPT-4等闭源模型
  • 华为交换机VLAN技术基础1(VLAN划分及跨交换机相同VLAN的通信技术)
  • Python自动化测试实现思路
  • python学习进阶之异常和文件操作(三)
  • vue3源码学习(三)computed 源码学习