博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
poj 2065 SETI
阅读量:5124 次
发布时间:2019-06-13

本文共 1904 字,大约阅读时间需要 6 分钟。

SETI

 

给出定义f(k) = ∑(0<=i<=n-1)ai*k^i(mod p),给出n个式子的结果f(1)~f(n),用一个字符串表示f的值,*表示0,a~z表示1~26,最终要解出a0~a(n-1)

f(1) = a0 * 1^0 + a1 * 1^1 + a2 * 1^2 ,,,,,,,a(n-1) * 1^n

f(2) = a0 * 1^0 + a1 * 2^1 + a2 * 2^2 ,,,,,,,a(n-1) * 2^n

f(3) = a0 * 3^0 + a1 * 3^1 + a2 * 3^2 ,,,,,,,a(n-1) * 3^n

,,,

,,,

f(n) = a0 * n^0 + a1 * n^1 + a2 * n^2 ,,,,,,,a(n-1) * n^n

/*    和poj2947是差不多的,只是多了快速幂    求可行系数时设了个p变量,和输入的p重名了,调试了很久,以后不能在这样拉! */#include
#include
#include
#define maxn 100using namespace std;int n,p,a[maxn][maxn],ans[maxn];char s[maxn];int Pow(int x,int y){ int res=1; while(y){ if(y&1)res=res*x%p; x=x*x%p; y>>=1; } return res;}void guass(){ for(int i=1,k=1;i<=n&&k<=n;i++,k++){
//枚举每个未知量 int pos=n+1; for(int j=i;j<=n;j++)if(a[j][k]){pos=j;break;} if(pos>n){k++;i--;continue;} for(int j=k;j<=n+1;j++)swap(a[i][j],a[pos][j]); for(int j=i+1;j<=n;j++){
//将下面每一行的改元都消去 if(!a[j][k])continue; int tmp=a[j][k]; for(int l=k;l<=n+1;l++){ a[j][l]=a[i][l]*tmp-a[j][l]*a[i][k]; a[j][l]=(a[j][l]%p+p)%p; } } } for(int i=n;i>=1;i--){ for(int j=i+1;j<=n;j++){ a[i][n+1]-=ans[j]*a[i][j]; a[i][n+1]=(a[i][n+1]%p+p)%p; } while(a[i][n+1]%a[i][i])a[i][n+1]+=p; ans[i]=(a[i][n+1]/a[i][i])%p; } for(int i=1;i<=n;i++)printf("%d ",ans[i]);puts("");}int main(){ freopen("Cola.txt","r",stdin); int T; scanf("%d",&T); while(T--){ memset(a,0,sizeof(a)); scanf("%d%s",&p,s+1); n=strlen(s+1); for(int i=1;i<=n;i++){ if(s[i]=='*')a[i][n+1]=0; else a[i][n+1]=s[i]-'a'+1; a[i][n+1]%=p; } for(int i=1;i<=n;i++) for(int j=0;j

 

转载于:https://www.cnblogs.com/thmyl/p/8087663.html

你可能感兴趣的文章
为什么OC语言很难
查看>>
算法基础——列表查找
查看>>
js中 style.width与 offsetWidth的区别
查看>>
BZOJ 2242: [SDOI2011]计算器 [快速幂 BSGS]
查看>>
2018年高考游记
查看>>
K-D Tree 学习笔记
查看>>
JS-为金额添加千分位逗号分割符
查看>>
【转】系统缓存全解析二:动态缓存(2)-页面局部缓存的两种方式
查看>>
css笔记
查看>>
[IOI2018] werewolf 狼人
查看>>
BIEE 目录迁移(文件夹)方式
查看>>
超级强大的socket工具ss,替代netstat
查看>>
面向对象思想 常说的OOP五大原则就是指1、单一职责原则; 2、开放闭合原则; 3、里氏替换原则; 4、依赖倒置原则; 5、接口隔离原则。...
查看>>
自我介绍
查看>>
ubuntu下修改mysql编码,使能支持中文
查看>>
JS 判断滚动底部并加载更多效果。。。。。。。。。
查看>>
nohup 详解
查看>>
PHP内存管理机制与垃圾回收机制
查看>>
JCE安装使用报错
查看>>
gulp使用
查看>>