【CYH-02】NOIp考砸后虐题赛:转换式:题解
这道题真的不难吧。
如@AKEE@AKEE@AKEE 大佬所说,此题的确可以将n推广到一般情况。
但题面还是良心的只到了N<=4N<=4N<=4
以目前的题目来看,简单模拟即可。
分别弄N=1,2,3,4N=1,2,3,4N=1,2,3,4的情况判断就行。
下面奉上std
代码:
#include<bits/stdc++.h>
#define L 1000001
using namespace std;
long long int a[100001],b,c,d,e,x=0,xx=2;
long long int mo=10000029;
int main() {
int n,t,N;
cin>>N;
if(N==1) {
cin>>n>>b;
a[0]=1;
for(int i=1; i<=n; i++) {
a[i]=a[i-1]*b%mo;
}
if(a[n]>=0)cout<<a[n];
else cout<<a[n]+mo;
return 0;
}
if(N==2) {
cin>>n>>b>>c;
a[1]=b;
a[2]=a[1]*a[1]-c*xx;
a[2]%=mo;
if(a[n]!=x) {
cout<<a[n]<<endl;
}
for(int j=3; j<=n; j++) {
if(a[j]!=x)continue;
a[j]=a[j-1]*b-a[j-2]*c;
a[j]%=mo;
}
if(a[n]>=0)cout<<a[n];
else cout<<a[n]+mo;
return 0;
}
if(N==3) {
cin>>n>>b>>c>>d;
a[0]=3;
a[1]=b;
a[2]=b*b-2*c;
a[2]%=mo;
for(int i=3; i<=n; i++) {
a[i]=b*a[i-1]-c*a[i-2]+d*a[i-3];
a[i]%=mo;
}
if(a[n]>=0)cout<<a[n];
else cout<<a[n]+mo;
return 0;
}
if(N==4) {
cin>>n>>b>>c>>d>>e;
a[0]=4;
a[1]=b;
a[2]=b*b-2*c;
a[2]%=mo;
a[3]=b*(a[2]-c)+3*d;
a[3]%=mo;
for(int i=4; i<=n; i++) {
a[i]=b*a[i-1]-c*a[i-2]+d*a[i-3]-e*a[i-4];
a[i]%=mo;
}
if(a[n]>=0)cout<<a[n];
else cout<<a[n]+mo;
return 0;
}
return 0;
}
【CYH-02】NOIp考砸后虐题赛:转换式:题解的更多相关文章
- 【CYH-02】NOIp考砸后虐题赛:坐标:题解
代码: 这道题也并不难,用排序+简单动规即可.因为@Kevin_Wa 大佬放的是c++,所以我来一发Pascal. var min,max,i,a1,b1,c1,d1,n:longint; a,b,c ...
- 【CYH-02】NOIp考砸后虐题赛:数学:题解
赛后放上.
- 【CYH-02】NOIp考砸后虐题赛:函数:题解
这道题貌似只有@AKEE 大佬A掉,恭喜! 还有因为c++中支持两个参数数量不同的相同名称的函数调用,所以当时就没改成两个函数,这里表示抱歉. 这道题可直接用指针+hash一下,然后就模拟即可. 代码 ...
- 【CYH-02】NOIp考砸后虐题赛:成绩:题解
这道题挺送水了吧... 两种做法. 其实空间都不需要那么大,我来提交界面一看一堆MLE的,于是还是良心的放开了时限. 这么简单,就不做解释了. 下面放出几种代码. 代码: 两个数组: #include ...
- CYJian的新春虐题赛
题解: t1: 算了一下发现乘法也是可以莫比乌斯反演的 然后就直接对原式莫比乌斯反演了 大概加法是$\mu {(i)}*f(i)$ 乘法就是$f(i)^{\mu {(i)}}$ 然后这个算法成功达到$ ...
- noip做题记录+挑战一句话题解?
因为灵巧实在太弱辽不得不做点noip续下命QQAQQQ 2018 积木大赛/铺设道路 傻逼原题? 然后傻逼的我居然检查了半天是不是有陷阱最后花了差不多一个小时才做掉我做过的原题...真的傻逼了我:( ...
- 退役II次后做题记录
退役II次后做题记录 感觉没啥好更的,咕. atcoder1219 历史研究 回滚莫队. [六省联考2017]组合数问题 我是傻逼 按照组合意义等价于\(nk\)个物品,选的物品\(\mod k\) ...
- 退役IV次后做题记录
退役IV次后做题记录 我啥都不会了.... AGC023 D 如果所有的楼房都在\(S\)同一边可以直接得出答案. 否则考虑最左最右两边的票数,如果左边>=右边,那么最右边会投给左边,因为就算车 ...
- 退役III次后做题记录(扯淡)
退役III次后做题记录(扯淡) CF607E Cross Sum 计算几何屎题 直接二分一下,算出每条线的位置然后算 注意相对位置这个不能先搞出坐标,直接算角度就行了,不然会卡精度/px flag:计 ...
随机推荐
- Android View 滚动边界的测量
最近一直在用Android TV的RecyclerView,实现视频搜索列表卡片的滚动显示,由于采用了双排滚动,打破了系统默认的单排滚动,且每一屏幕显示10个完整卡片5个半漏边卡片,每个完整卡片的左下 ...
- 15 款 jQuery 社交分享插件
过去几年中社交媒体越来越流行了,能够分享音乐.视频.图像甚至是其他的 docs 文档到互联网上去,这样子还能够提高页面的点击量.通常,一些社交媒体插件都能允许你的用户分享你网站上的内容到其他的社交平台 ...
- c# 文本超长截断
根据控件大小进行截断 private void SetStringTruncat(Static.LabelEx lbl) { string oldStr = lbl.Text; if (string. ...
- 初次比较正式的IT职场面试后几点对自己web开发的思考
昨天晚上参加一个web开发面试,对于还没有真正毕业的自己来说,web开发的面试不是第一次,暑假就面试几家公司,前几次的面试并没有发现自己对自己学习的专业知识有什么学习态度的问题,因为前几次的面试官都是 ...
- ParrotSec 中文社区 QQ群认证 Openssl解密
ParrotSec 中文社区 QQ群认证 Openssl解密 下载Key.txt 打开parrot 系统,复制文件到系统.打开命令行输入 openssl enc -aes-256-cfb -d -in ...
- 【win10家庭版】删除文件提示没有权限最简单的方式(已验证)
趁着618入了新本本,预装了家庭普通版Win10,但是实际使用中遇到了一些问题.问题不大,但是着实反人类,在此吐槽! 问题: 首先,进入系统会提示你建一个账号,建立完成登录系统.本账户拥有Admini ...
- Spark2.4.0源码——DAGScheduler
前言 Spark会将用户提交的作业看作一个job,在提交的时候首先将job转换为一系列的RDD,并按照RDD之间的依赖关系构建DAG(有向无环图),DAGScheduler会按照RDD依赖的不同将DA ...
- CSS3 入门级
从刚开始学习的选择器总共有十三种: id class 标签 子代 后代 交集 并集 通配符 伪类 结构 属性 相邻 兄弟 (全当复习,如果有用的话那就正好) div[name=zhang] 这是属性 ...
- 风险:隐蔽权限修改导致rgw服务中断
上午正在开会,突然收到rgw服务异常的告警(503 Service Unavailable),立马停下来处理告警,避免影响到用户~ 我们的rgw frontend用的是apache,之前也遇到过5 ...
- 教你用VMware Workstation Pro 12 安装XP系统
转 https://jingyan.baidu.com/article/ff42efa9102da3c19e220219.html