上一页 1 ··· 20 21 22 23 24 25 26 27 28 ··· 30 下一页
摘要: #include#include#include#include#include#include#include#include#define ll __int64#define pi acos(-1.0)using namespace std;int gcd(int a,int b){ int t; if(a>t; while(t--) { cin>>an; len=an.length(); pos2=an.find('(',0); pos3=an.find(')',pos2); if(pos2<0) { a=0; for(i=2;i& 阅读全文
posted @ 2013-07-24 18:17 _随心所欲_ 阅读(146) 评论(0) 推荐(0) 编辑
摘要: 这题枚举k节省时间#include#include#include#include#include#include#include#include#define ll __int64#define pi acos(-1.0)using namespace std;int an[9],n,m,x,k,dp[102][102];bool vis[9];void dfs(int d,int num){ int i,temp; if(d==n) { for(i=1;inum) dp[i][temp]=num; return ; } for(i=0;i<n;i++) { if(vis[i]==0) 阅读全文
posted @ 2013-07-24 12:01 _随心所欲_ 阅读(130) 评论(0) 推荐(0) 编辑
摘要: 容斥原理!!这题首先要去掉=0和>=n的值,然后再使用容斥原理解决我用的是数组做的…… 1 #include 2 #include 3 #include 4 #include 5 #include 6 #include 7 #include 8 #define ll __int64 9 using namespace std;10 int an[11],n,m,num,a[11];11 ll gcd(int a,int b)12 {13 int t;14 if(a>n>>m)50 {51 num=0;k=0;52 for(i=0;i>t;... 阅读全文
posted @ 2013-07-23 13:43 _随心所欲_ 阅读(170) 评论(0) 推荐(0) 编辑
摘要: 因子和:6的因子是1,2,3,6; 6的因子和是 s(6)=1+2+3+6=12;20的因子是1,2,4,5,10,20; 20的因子和是 s(20)=1+2+4+5+10+20=42;2的因子是1,2; 2的因子和是 s(2)=1+2=3;3的因子是1,3; 3的因子和是 s(3)=1+3=4;4的因子和是 s(4)=1+2+4=7;5的因子和是 s(5)=1+5=6;s(6)=s(2)*s(3)=3*4=12;s(20)=s(4)*s(5)=7*6=42;这是巧合吗?再看 s(50)= 1+2+5+10+25+50=93=3*31=s(2)*s(25),s(25)=1+5+25=31.这在 阅读全文
posted @ 2013-07-22 21:48 _随心所欲_ 阅读(154) 评论(0) 推荐(0) 编辑
摘要: 公式:a^b%p=a^(b%phi(p)+phi(p))%p b>=phi(p) 1 #include 2 #include 3 #include 4 #include 5 #include 6 #include 7 #include 8 #define ll __int64 9 using namespace std;10 ll euler(int n)11 {12 ll ans=1;13 for(int i=2;i*i1) ans*=n-1;27 return ans;28 }29 ll pows(ll a,ll b,ll m)30 {31 ll ans=1... 阅读全文
posted @ 2013-07-22 20:40 _随心所欲_ 阅读(264) 评论(0) 推荐(0) 编辑
摘要: 此题用到的公式:a^b%c=a^(b%phi(c)+phi(c))%c (b>=phi(c)).1.当n!=phi(p) && n!%phi(p)!=0,用上面公式求;3.当n!>=phi(p) && n!%phi(p)==0,变为n^(phi(p))%p,找循环节,就可以了 1 #include 2 #include 3 #include 4 #include 5 #include 6 #include 7 #include 8 #include 9 #define ll unsigned __int6410 using namespace std 阅读全文
posted @ 2013-07-22 17:14 _随心所欲_ 阅读(142) 评论(0) 推荐(0) 编辑
摘要: 这题主要是质因数分解!!求出每个因子的幂,如果有负数,则输出-1;如果2的幂数为0,这输出0;最后就是开始凑阶乘了…… 1 #include 2 #include 3 #include 4 #include 5 #include 6 #include 7 #include 8 #include 9 using namespace std; 10 int prime[1300],cnt,p[1300],q[1300],num[1300],len; 11 int s[1300],r[1300],a[1300]; 12 bool f[10010]; 13 int min(int a... 阅读全文
posted @ 2013-07-22 15:14 _随心所欲_ 阅读(239) 评论(0) 推荐(0) 编辑
摘要: 这题的主要就是找循环节数,这里用找字符串最小覆盖来实现,也就是n-next[n],证明在这http://blog.csdn.net/fjsd155/article/details/6866991#include#include#include#include#include#include#includeusing namespace std;__int64 mod=100000007;int dis[360005],data[360005],next[360005];__int64 euler(__int64 n){ int i; __int64 ans=1; for(i=... 阅读全文
posted @ 2013-07-21 15:28 _随心所欲_ 阅读(219) 评论(0) 推荐(0) 编辑
摘要: 首先,记50的为0,100的为1.当m=4,n=3时,其中的非法序列有0110010;从不合法的1后面开始,0->1,1->0,得到序列式0111101也就是说,非法序列变为了n-1个0,m+1个1.总的数目=C(m+n,n),非法的=C(m+n,m+1)符合数目=(C(m+n,n)-C(m+n,m+1))*m!*n!;化简得:(m+n)!*(m+1-n)/(m+1).Java代码: 1 import java.io.*; 2 import java.math.*; 3 import java.math.BigInteger; 4 import java.lang.String.* 阅读全文
posted @ 2013-07-21 11:18 _随心所欲_ 阅读(163) 评论(0) 推荐(0) 编辑
摘要: 求实数的幂,这个用C++写的话有点长,但是用Java写就非常方便了……import java.io.*;import java.math.*;import java.util.*;import java.text.*;public class Main{ public static void main(String arg[]){ Scanner cin=new Scanner(System.in); String an; while(cin.hasNextDouble()) { BigDecimal ans = cin.nextBigDecimal(); int n=cin.nextInt( 阅读全文
posted @ 2013-07-20 21:28 _随心所欲_ 阅读(110) 评论(0) 推荐(0) 编辑
上一页 1 ··· 20 21 22 23 24 25 26 27 28 ··· 30 下一页