摘要:
#include #define LL long long using namespace std; LL b,p,k; inline void quickM() { cin>>b>>p>>k; if(p==0) { cout>=1; } cout<<ans; } int main() { quickM(); return... 阅读全文
摘要:
#include"iostream"#include"cstdio"#include"algorithm"#include"cstring"#define N 500using namespace std;int lcs[N][N];//lcs[x][y]表示 串1的第一位的到x,串2的第一位到y的 阅读全文
摘要:
1 #include 2 #include 3 #include 4 #include 5 #define p 8 6 #define carry 100000000 7 #define maxn 10001 8 #define maxns 2001 9 long long ll=0; 10 char s1[maxn],s2[maxn]; 11 int a[maxns],b[... 阅读全文
摘要:
// //Search // //happyZYM 的博客 //题解 UVA10213 【How Many Pieces of Land ?】 // //2018-05-16 20:09:51thumb_up 0 //紫书上的思路很容易理解,但时间复杂度太高。在网上搜了半天终于在维基百科上搜到了O(1)算法。 以下证明过程摘自维基百科: pic // //即答案为 (n*n*n*n-6*n*n*... 阅读全文
摘要:
这道题仔细观察就会发现规律,设点的坐标为(X,Y)那么y=kx; 求不同的k值;k=y/x要k值不同x,y肯定要互质;可以随便观察一个点比如(1,4) 或者(3,2)这些可以看见的点都是x,y互质; 那么转化问题; 怎么才能求到这些点呢; 因为x<=n;y<=n; 那么就问题就变成了在小于n里面可以 阅读全文
摘要:
由于梅森数是一个巨大的数我们不能一个一个2来乘,由于只存最后五百位,我们就用高精乘的思想来做; 第一问算位数证明方式如下: 2ˆp 与 2ˆp-1具有相同位数,设2ˆp的位数等于k,我们知道10ˆn的位数为n+1,自己想想看, 我们只要把底数10换成2就行了,怎么用10的n次方来表示2呢,学过对数函 阅读全文
摘要:
背包问题主要是背模板,这里收录了一些模板 一些复杂的背包问题(如泛化物品)未收录 01背包问题: 无优化 一维数组优化: 更进一步的常数优化: 完全背包问题: 多重背包问题: 阅读全文