題意:給t個組合數的最大公約數。
將每個組合數的素數分解式求出來,把每個素數的最小次數乘起來就是最大公約數。組合數可以寫成階乘的形式,然後利用階乘的整數分解就可以得到組合數的整數分解。
**:#include #include #include #include #include #include#include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include using namespace std;
#define pb push_back
#define mp make_pair
#define rep(i,x,n) for(int i=x;i<(n);++i)
#define for(i,l,h) for(int i=(l);i<=(h);++i)
#define ford(i,h,l) for(int i=(h);i>=(l);--i)
#define sz(x) ((int)(x).size())
#define all(x) (x).begin(), (x).end()
#define ri(x) scanf("%d", &(x))
#define rii(x, y) scanf("%d%d", &(x), &(y))
#define riii(x, y, z) scanf("%d%d%d", &(x), &(y), &(z))
#define dri(x) int (x); scanf("%d", &x)
#define drii(x, y) int x, y; scanf("%d%d", &x, &y)
#define driii(x, y, z) int x, y, z; scanf("%d%d%d", &x, &y, &z)
#define oi(x) printf("%d",x);
#define rs(x) scanf("%s", (x))
#define ms0(x) memset((x), 0, sizeof((x)))
#define ms1(x) memset((x), -1, sizeof((x)))
#define len(x) strlen(x)
#define f first
#define s second
#define swap(a, b) (a ^= b, b ^= a, a ^= b)
#define dpoint strcut node
#define cmpd int cmp(const int &a,const int &b)
/*#ifdef home
freopen("in.txt","r",stdin);
#endif*/
const int mod = 1e9+7;
typedef vectorvi;
typedef vectorvs;
typedef vectorvd;
typedef long long ll;
typedef pairpii;
//#define home
int scan()
/*----------------please-----do-----not-----hack-----me--------------------*/
long long int prime[100000+5];
int vis[100000+5];
int cnt;
void getprime()
return res;
}long long int mypow(long long int a,long long int b)
return res;
}int res[101000];
int main()
long long int ans=1;
for(int j=0;prime[j]<=bound;j++)
{for(int i=0;i
整數分解為2的冪 數學
任何正整數都能分解成2的冪,給定整數n,求n的此類劃分方法的數量!由於方案數量較大,輸出mod 1000000007的結果。比如n 7時,共有6種劃分方法。7 1 1 1 1 1 1 1 1 1 1 1 1 2 1 1 1 2 2 1 2 2 2 1 1 1 4 1 2 4 input輸入乙個數n ...
1383 整數分解為2的冪
1383 整數分解為2的冪 基準時間限制 1 秒 空間限制 131072 kb 任何正整數都能分解成2的冪,給定整數n,求n的此類劃分方法的數量!由於方案數量較大,輸出mod 1000000007的結果。比如n 7時,共有6種劃分方法。7 1 1 1 1 1 1 1 1 1 1 1 1 2 1 1 ...
python實現整數分解為質數的演算法
之前面試碰到過一道題,要求將整數分解為質數,用c實現看上去較為繁瑣,最近學習python,拿這道題練練手,相對於c而言,非常簡潔。廢話不多說,先上原始碼。import time def isnotin meta list for ec in list if meta ec return false ...