专栏文章
题解:P12975 疯狂星期四
P12975题解参与者 1已保存评论 0
文章操作
快速查看文章及其快照的属性,并进行相关操作。
- 当前评论
- 0 条
- 当前快照
- 1 份
- 快照标识符
- @miozoxxg
- 此快照首次捕获于
- 2025/12/03 03:47 3 个月前
- 此快照最后确认于
- 2025/12/03 03:47 3 个月前
首先想到 dp。
设 表示从 到 的格子里数的和,对 取余余数为 。
转移应为 ,可以理解为后面的一部分是第 格填 到 ,前面是填 。
时间复杂度 ,可惜 太大,似乎无法优化。
发现对于相同的 来说,后面的求和是相同的,只有前面一部分影响 相同的 的值。当 时,不难发现 ,而 。
所以,对于任意的 ,就都有 。
又因为总共有 种方案,就有 ,解得 。
是质数,由费马小定理得 ,然后在处理逆元计算。
CPP#include<bits/stdc++.h>
using namespace std;
const int mod=101;
int ksm(int a,int b)
{
int res=1;
while(b)
{
if(b&1)
res=res*a%mod;
a=a*a%mod;
b>>=1;
}
return res;
}
int n;
int main()
{
ios::sync_with_stdio(0);
cin.tie(0);
cout.tie(0);
char c;
while(cin>>c)
n=(n*10+(c-'0'))%100;
cout<<(ksm(8,n)+6)%mod*ksm(7,mod-2)%mod;
return 0;
}
相关推荐
评论
共 0 条评论,欢迎与作者交流。
正在加载评论...