HDU 3923(Polya)
2016-03-30 21:12
351 查看
hdu 3923
题目大意:给定m种颜色,长度为n的项链,要求旋转和翻转不能重复,求方法数 ;
模板题 + 逆元;
题目大意:给定m种颜色,长度为n的项链,要求旋转和翻转不能重复,求方法数 ;
模板题 + 逆元;
#include <iostream> #include <cstdio> #define LL long long #define MOD 1000000007 using namespace std; LL gcd(LL a, LL b) { return b == 0 ? a : gcd(b, a % b); } LL quick_Mod(LL m, LL n, LL k) { LL ans = 1; while (n) { if (n & 1) { ans = (ans * m) % k; } n = n >> 1; m = (m * m) % k; } return ans; } int main() { int T; scanf("%d", &T); for (int cas = 1; cas <= T; cas++) { LL m, n; scanf("%lld%lld", &m, &n); LL sum = 0; for (int i = 1; i <= n; i++) { LL t = gcd(i, n); sum = (sum + quick_Mod(m, t, MOD)); } if (n & 1) { sum = (sum + quick_Mod(m, (n + 1) / 2, MOD) * n % MOD) % MOD; } else { sum = (sum + n / 2 * quick_Mod(m, (n + 2) / 2, MOD) % MOD) % MOD; sum = (sum + n / 2 * quick_Mod(m, n / 2, MOD) % MOD) % MOD; } sum = sum * quick_Mod(2 * n, MOD - 2, MOD) % MOD; printf("Case #%d: %lld\n", cas, sum); } return 0; }
相关文章推荐
- 设计模式之行为型模式 - 调用行为的传递问题
- [div+css]晒晒最新制作专题推广页模板
- 2008大学生入党申请书 模板
- IMAIL多语言模板两套Outlook&Gmail模板下载
- 在PHP中使用模板的方法
- 深入解析php模板技术原理【一】
- Json2Template.js 基于jquery的插件 绑定JavaScript对象到Html模板中
- 在ASP中不用模板生成HTML静态页直接生成.html页面
- C#模板方法模式(Template Method Pattern)实例教程
- javascript文本模板用法实例
- 关于Asp代码与页面的分离模板技术第1/3页
- php模板原理讲解
- 需要使用php模板的朋友必看的很多个顶级PHP模板引擎比较分析
- DataGrid 动态添加模板列 实现代码
- 详解java模板和回调机制
- C++模板之特化与偏特化详解
- vs.net2008添加模板方法
- ThinkPHP模板判断输出Empty标签用法详解
- ThinkPHP模板范围判断输出In标签与Range标签用法详解
- thinkphp模板用法和内容输出实例