poj2409

来源:互联网 发布:不会编程能学数据库吗 编辑:程序博客网 时间:2024/05/22 05:14

polya第二题,没有难度。

/*************************************************************************> File Name: poj2409.cpp> Author: zhengnanlee > Mail: zhengnanlee@hotmail.com  > Created Time: 2013年09月24日 星期二 16时34分20秒 ************************************************************************/#include <iostream>#include <math.h>using namespace std;int gcd(int v1, int v2) {     while(v2)     {         int temp = v2;         v2 = v1 % v2;         v1 = temp;     }     return v1; }int main(){    int n, m;    while(cin>>n>>m && (n || m))    {        int ans = 0;        for(int i = 1; i <= m; i++)        {            ans += pow(n, gcd(i,m));        }        if(m & 1)        {            ans += m * pow(n, m / 2 + 1);        }        else        {            ans += (m / 2) * pow(n, m / 2) + m / 2 * pow(n, m / 2 + 1);        }        ans /= m * 2;        cout << ans << endl;    }    return 0;}


原创粉丝点击