intgcd(int a,int b){int c =1;while(c >0){
c = a % b;
a = b;
b = c;}return a;}
判断素数
boolisprime(int a){int sqrt_a =sqrt(a);for(int i =2; i <= sqrt_a; i++){if(a % i ==0){returnfalse;}}returntrue;}
筛法求素数
constint n =100;int x[n];int prime[n];intprime_list(){int count =1;
x[0]= x[1]=1;for(int i =2; i <= n; i++){if(x[i]==0){
prime[count]= i;++count;}for(int j =1; j < count && prime[j]* i < n;++j)
x[prime[j]* i]=1;}return count;}
十进制转X进制
#include<iostream>#include<cstdio>usingnamespace std;
string dict ="0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ";//十进制转 x 进制函数。
string ten_to_x(int n,int x){
string ans ="";//模拟短除法。 while(n !=0){
ans += dict[n % x];
n /= x;}
string t ="";//倒取余数。for(int i = ans.length()-1; i >=0; i--) t += ans[i];return t;}intmain(){int n, x;
cin >> n >> x;
cout <<ten_to_x(n, x);return0;}
X进制转10进制
#include<bits/stdc++.h>usingnamespace std;// char转数码intcharToInt(char c){if('0'<=c && c<='9')return c-'0';return c-'A'+10;}intx_to_ten(int x, string s){int a[105];int len = s.size();for(int i = len -1; i >=0; i--)
a[len -1- i]=charToInt(S[i]);int ans =0, w =1;for(int i =0; i < len +1; i++){
ans = ans + w * a[i];
w = w * x;}return ans;}intmain(void){int x;// 输入x进制
string s;
cin >> x >> s;
cout <<x_to_ten(x, s);return0;}