【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:计 ...
随机推荐
- EasyUI 实现编辑功能,给Combobox 赋值
1: <input id="RequestType" name="RequestType" class="easyui-combobox&quo ...
- 简析TCP的三次握手与四次分手(TCP协议头部的格式,数据从应用层发下来,会在每一层都会加上头部信息,进行封装,然后再发送到数据接收端)good
2014-10-30 分类:理论基础 / 网络开发 阅读(4127) 评论(29) TCP是什么? 具体的关于TCP是什么,我不打算详细的说了:当你看到这篇文章时,我想你也知道TCP的概念了,想要更 ...
- elasticsearch local debug环境搭建
最近计划看看elasticsearch的源码,首先得把local debug环境搞定. 下载源码.因为公司产线是5.6.5,所以就下载了5.6.5的代码. 源码编译.先进入到/elasticsearc ...
- C++ 使用回调函数的方式 和 作用。 持续更新
先看两个demo: 一.在类test1中调用函数print() ,把print()的函数指针传递给test1的函数指针参数 test1.h: #include <stdio.h> #inc ...
- 深入理解Java G1垃圾收集器
本文首先简单介绍了垃圾收集的常见方式,然后再分析了G1收集器的收集原理,相比其他垃圾收集器的优势,最后给出了一些调优实践. 一,什么是垃圾回收 首先,在了解G1之前,我们需要清楚的知道,垃圾回收是什么 ...
- asp.net core系列 66 Dapper介绍--Micro-ORM
一.概述 目前对于.net的数据访问ORM工具很多,EF和EF Core是一个重量级的框架.最近在搭建新的项目架构,来学习一下轻量级的数据访问ORM工具Dapper.Dapper支持SQL Serve ...
- 【转】 远程连接mysql
转自:http://www.linuxidc.com/Linux/2013-05/84813.htm 1.确认能ping通 2.确认端口能telnet通.如果user表的host值是localhost ...
- Hexo+NexT(三):Next主题配置详解
阅读本篇之前,假定读者已经有了Node.js的基础,如需要补充Node.js知识的,请自行百度. Hexo是在Node.js框架下的一个项目,利用Node.js提供的强大功能,完成从Markdown到 ...
- springboot 2.X 在访问静态资源的的时候出现404的问题
通过idea快速搭建一个springboot项目: springboot版本2.1.6 在网上看的资料,springboot静态资源访问如下: "classpath:/META‐INF/re ...
- 【JVM】虚拟机初见-运行时数据区图解
本文是听咕泡XX公开课视频整理的笔记,较书本更为总结,感谢. 计算机模型(汇编知识):数据集(数据).指令集(操作指令,+-等).控制集(分支循环) JVM运行时的数据区: 程序计数器(每个线程都有) ...