24h購物| | PChome| 登入
2009-02-19 22:12:07| 人氣355| 回應0 | 上一篇 | 下一篇

2008 NPSC D. 輾轉難眠

推薦 0 收藏 0 轉貼0 訂閱站台

http://www.tcgs.tc.edu.tw/blog/index.php?op=ViewArticle&articleId=232&blogId=2
補完計畫↑

( a^m - b^m , a^n - b^n )
=( a^m - b^m , a^n - b^n - (a^m - b^m)*a^(n-m) )
=( a^m - b^m , - b^n + b^m*a^(n-m) )
=( a^m - b^m , b^m*a^(n-m) - b^(n-m)*b^m )
=( a^m - b^m , b^m*(a^(n-m) - b^(n-m))
=( a^m - b^m , a^(n-m) - b^(n-m) ) 發現到n跟m在做輾轉的步驟
= ... = a^(n,m) - b^(n,m)

/***********************************************************/

#include<stdio.h>  
#include<stdlib.h>  
int gcd(int a,int b)              
 {              
  int temp;              
  while(a%b)                    
   {                    
    temp=a;                    
    a=b;                    
    b=temp%b;                               
   }              
   return b;              
 }
int pow(int a, int n, int p)
{
    int b,temp=1;
    for (b=0;b<n;b++)
        temp=(temp*a)%p;
    return temp;
}
main()  
{  
 int a,b,m,n,p;
 while(scanf("%d %d %d %d %d",&a,&b,&m,&n,&p)==5)   
  {  
   int gg=gcd(m,n);
   a=pow(a,gg,p);
   b=pow(b,gg,p);
   printf("%d\n",(p+a-b)%p);
  }    
 return 0;  
}

台長: 來源不明
人氣(355) | 回應(0)| 推薦 (0)| 收藏 (0)| 轉寄
全站分類: 數位資訊(科技、網路、通訊、家電) | 個人分類: NPSC |
此分類下一篇:2005 NPSC B. 惱人的零錢
此分類上一篇:2006 NPSC F. 假日的奇想曲

是 (若未登入"個人新聞台帳號"則看不到回覆唷!)
* 請輸入識別碼:
請輸入圖片中算式的結果(可能為0) 
(有*為必填)
TOP
詳全文