参考博客:

https://blog.csdn.net/liangzhaoyang1/article/details/72639208

题目链接:

https://codeforces.com/gym/101873/problem/B

题意:

给出$C$种颜色,涂在每面墙大小为$n\cdot n$的正$m$角楼上,求本质不同的染色方法种数

数据范围:

$1\leq n\leq 500$

$3\leq m\leq 500$

$1\leq c\leq 500$

分析:

题目可以转化为$C^{n\cdot n}$种颜色,涂在有$m$个节点的项链上,求本质不同的染色方法种数

这样我们可以直接套用Polya模板

$$ans=\frac{1}{m}\cdot \left ( C^{gcd(1,m)} +C^{gcd(2,m)}+C^{gcd(3,m)}...+C^{gcd(m,m)}\right )$$

ac代码:

#include <bits/stdc++.h>
#define ll long long
using namespace std;
const int maxn = 1e3+10;
const int mod=1e9+7;
ll qpow(ll n,ll m)
{
ll res=1;
ll k=n;
while(m)
{
if(m&1)res=res*k%mod;
k=k*k%mod;
m/=2;
}
return res;
}
int main()
{
// cout<<qpow(4,5)<<" "<<qpow(5,4)<<endl;
ll n,m,c,ans=0;
cin>>n>>m>>c;
ll g=qpow(c,n*n);
for(ll i=1;i<=m;i++)
ans=(ans+qpow(g,__gcd(i,m)))%mod;
ans=ans*qpow(m,mod-2)%mod;
cout<<ans<<endl;
return 0;
}

  

最新文章

  1. 实战Hybird app:内存溢出与优化
  2. Android学习系列(37)--App调试内存泄露之Context篇(下)
  3. Struts2中重定向和请求转发配置
  4. junit高级篇(参数化、打包测试)-实例代码
  5. Android Studio 中 FAILURE: Build failed with an exception. * What went wrong: Execution failed for task &#39;:compileDebugAidl&#39;.的问题解答
  6. 【USACO 1.1.4】破碎的项链
  7. Spring中的DataBinding(一)
  8. Redis 命令总结
  9. 不可思议的纯 CSS 滚动进度条效果
  10. django rest framework(3)
  11. python学习之路07
  12. (9)模板层 - templates(模板语言、语法、取值、过滤器、变量的使用)
  13. Spring之事务操作(注解)
  14. 【GDOI2015】 水题 tarjan缩点
  15. springMVC入门-07
  16. T-SQL 标识符
  17. websocket 缺点
  18. BI项目简单备份策略
  19. java script 学习
  20. 谈缓存数据库在web开发中的重要性

热门文章

  1. java语言中使用三元式的时候应该注意的问题
  2. windows上pip安装及使用详解
  3. jboss日志的自定义
  4. 记录一则ORA
  5. Java并发与多线程
  6. Spring Boot WebFlux整合mongoDB
  7. Nginx返回大长度的JSON数据被截断
  8. linux wireless 基础知识 MAC80211 CFG80211
  9. linux基础—课堂随笔08_进程(转)
  10. js去掉url后某参数【函数封装】