24h購物| | PChome| 登入
2009-05-09 20:13:57| 人氣721| 回應0 | 上一篇 | 下一篇

ACM 11417 11417 - GCD

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

作法:建表
加速:DP(紀錄關係!! 自己畫表就可以了解了)

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

#include<stdio.h>
#include<stdlib.h>
#define N 500
int gcd(int a,int b)        
 {        
  int temp;        
  while(a%b)              
   {              
    temp=a;              
    a=b;              
    b=temp%b;                         
   }        
   return b;        
 } 
main()
{
 short int map[501][501]={0};
 int ans[501]={0};
 int a,b,n;
 for(a=1;a<=N;a++)
  for(b=a+1;b<=N;b++)
   {
    map[a][b]=map[a][b-1]+gcd(a,b);
    ans[b]+=map[a][b];
   }
 while(scanf("%d",&n)==1&&n!=0)
    printf("%d\n",ans[n]);
 return 0;
}

台長: 來源不明
人氣(721) | 回應(0)| 推薦 (0)| 收藏 (0)| 轉寄
全站分類: 數位資訊(科技、網路、通訊、家電) | 個人分類: ACM |
此分類下一篇:ACM 10814 10814 - Simplifying Fractions
此分類上一篇:ACM 674 674 - Coin Change

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