[luoguP1037] 产生数(floyd + 高精度)
传送门
先用 floyd 求出每一个数可以变成那些数。
然后利用乘法原理求解,需要高精度。
代码
#include <cstdio> #include <cstring> #include <iostream> using namespace std; const int MAXN = 101; char s[MAXN]; char c[MAXN]; int map[10][10]; inline char *read() struct Big_int inline void operator = (char *c) inline void operator = (int x) } inline void print() }; inline Big_int operator + (const Big_int x, const Big_int y) while(!ret.s[ret.idx 1] && ret.idx > 1) ret.idx; return ret; } inline bool operator < (const Big_int x, const Big_int y) inline Big_int operator (Big_int x, Big_int y) ret.s[i] = x.s[i] y.s[i]; } while(!ret.s[ret.idx 1] && ret.idx > 1) ret.idx; return ret; } inline Big_int operator * (const Big_int x, const Big_int y) while(!ret.s[ret.idx 1] && ret.idx > 1) ret.idx; return ret; } Big_int a, ans; int main() for(i = 0; i <= 9; i++) map[i][i] = 1; for(k = 0; k <= 9; k++) for(i = 0; i <= 9; i++) for(j = 0; j <= 9; j++) map[i][j] = map[i][j] || (map[i][k] && map[k][j]); ans = 1; k = strlen(s); for(i = 0; i < k; i++) ans.print(); return 0; }
上一篇:[luoguP1922] 女仆咖啡厅桌游吧(奇奇怪怪的树形DP)
Floyd 高精度
spc文件怎么看,spc文件用什么打开?
0文件怎么看,0文件用什么打开?
sparseimage文件怎么看,sparseimage文件用什么打开?
sp文件怎么看,sp文件用什么打开?
dv文件怎么看,dv文件用什么打开?
soundpack文件怎么看,soundpack文件用什么打开?
dus文件怎么看,dus文件用什么打开?
dtw文件怎么看,dtw文件用什么打开?
spdf文件怎么看,spdf文件用什么打开?
0文件怎么看,0文件用什么打开?