由于反射的存在,分奇偶讨论其置换的循环节数量,大数用JAVA就好了。

  1. import java.math.*;
  2. import java.util.*;
  3.  
  4. public class Main{
  5. public static void main(String[] args) {
  6. Scanner cin = new Scanner(System.in);
  7. int n, t;
  8. while(cin.hasNext()) {
  9. n = cin.nextInt();
  10. BigInteger c = cin.nextBigInteger();
  11. BigInteger sum = BigInteger.valueOf(0);
  12. if(n % 2 == 0) {
  13. sum = sum.add(c.pow(n * n));//0
  14. sum = sum.add(c.pow(n * n / 4));//90
  15. sum = sum.add(c.pow(n * n / 2));//180
  16. sum = sum.add(c.pow(n * n / 4));//270
  17. sum = sum.add(c.pow(n * (n - 1) / 2 + n));//mirC
  18. sum = sum.add(c.pow(n * (n - 1) / 2 + n));//mirC
  19. sum = sum.add(c.pow(n * n / 2));//mirM
  20. sum = sum.add(c.pow(n * n / 2));//mirM
  21. }
  22. else{
  23. sum = sum.add(c.pow(n * n));//0
  24. sum = sum.add(c.pow((n * n - 1) / 4 + 1));//90
  25. sum = sum.add(c.pow((n * n - 1) / 2 + 1));//180
  26. sum = sum.add(c.pow((n * n - 1) / 4 + 1));//270
  27. sum = sum.add(c.pow(n * (n + 1) / 2));//mirC
  28. sum = sum.add(c.pow(n * (n + 1) / 2));//mirC
  29. sum = sum.add(c.pow(n * (n + 1) / 2));//mirM
  30. sum = sum.add(c.pow(n * (n + 1) / 2));//mirM
  31. }
  32. sum = sum.divide(BigInteger.valueOf(8));
  33. System.out.println(sum);
  34.  
  35. }
  36. }
  37. }

HDU 1812 polya 大数的更多相关文章

  1. hdu 5868 Polya计数

    Different Circle Permutation Time Limit: 3000/1500 MS (Java/Others)    Memory Limit: 262144/262144 K ...

  2. hdu 2865 Polya计数+(矩阵 or 找规律 求C)

    Birthday Toy Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 32768/32768 K (Java/Others)Tota ...

  3. HDU 5047 Sawtooth(大数模拟)上海赛区网赛1006

    题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=5047 解题报告:问一个“M”型可以把一个矩形的平面最多分割成多少块. 输入是有n个“M",现 ...

  4. HDU 1715 (大数相加,斐波拉契数列)

    题目链接: http://acm.hdu.edu.cn/showproblem.php?pid=1715 大菲波数 Time Limit: 1000/1000 MS (Java/Others)     ...

  5. hdu 3547 (polya定理 + 小高精)

    DIY CubeTime Limit: 2000/2000 MS (Java/Others)    Memory Limit: 65535/32768 K (Java/Others)Total Sub ...

  6. hdu 5718(Oracle)大数加法

    曾经有一位国王,统治着一片未名之地.他膝下有三个女儿. 三个女儿中最年轻漂亮的当属Psyche.她的父亲不确定她未来的命运,于是他来到Delphi神庙求神谕. 神谕可以看作一个不含前导零的正整数n n ...

  7. hdu 5351 规律+大数

    题目大意:定义了一种fib字符串,问第n个fib串的前m个字母前后相等串的最大长度,大约就是这样的 其实主要读完题意的时候并没有思路,但是列几个fib字符串就会发现,除了fib1以外,所有串的前面都是 ...

  8. hdu 1812 Count the Tetris

    高精度+polya原理可以搞定 思路: 设边长为n的正方形,c种颜色.旋转只有 0,90,180,270度三种旋法.旋0度,则置换的轮换数为n*n旋90度,n为偶数时,则置换的轮换数为n*n/4,n为 ...

  9. hdu 1063 Exponentiation 大数

    Problem Description Problems involving the computation of exact values of very large magnitude and p ...

随机推荐

  1. struts通配符*的使用

    <action name="user_*" class="com.wangcf.UserAction" method="{1}"> ...

  2. Alpha 冲刺(8/10)

    队名 火箭少男100 组长博客 林燊大哥 作业博客 Alpha 冲鸭鸭鸭鸭鸭鸭鸭鸭! 成员冲刺阶段情况 林燊(组长) 过去两天完成了哪些任务 协调各成员之间的工作 多次测试软件运行 学习OPENMP ...

  3. 第7章 监听器Listener

    Listener概述 Listener的使用 使用Listener需要实现相应的Listener接口. public class SessionListenerTest implements Http ...

  4. 团队项目利用Msbuild自定义Task实现增量发布

    最近一直在做自动部署工具,主要利用到了Msbuild的自定义Task,通过Task我们可以自定义编译.部署过程减少人工直接干预.Msbuild的详细用法,可以去园子里搜一下,有很多的基础教程,这里就不 ...

  5. Spark Transformations介绍

    背景 本文介绍是基于Spark 1.3源码 如何创建RDD? RDD可以从普通数组创建出来,也可以从文件系统或者HDFS中的文件创建出来. 举例:从普通数组创建RDD,里面包含了1到9这9个数字,它们 ...

  6. Splash广告界面

    在软件开始启动时都是会使用一个splashActivity实现联网判断和相关资源的加载,在一款网络软件上开始时的缓存加载和网络判断可以为用户节省不必要的流量开销. 使用handler延时启动下一个ac ...

  7. <问吧>调查问卷心得体会

    <问吧>调查问卷心得与体会 在这之前,我们已经组成了一个六个人的小团队---“走廊奔跑队”,我们这次做的这个项目的名称是:问吧.在项目实施之前,我们必做的一步就是需求分析,目的就是充分了解 ...

  8. 使用selenium遍历frame中的表单信息 ;

    遍历frame中的表单 : package webDriverPro; import java.util.List; import java.util.regex.Matcher; import ja ...

  9. 微信小程序组件 360

    data: { nums: 1, start: '', // change:'' // 上一部记忆数据 mid: '' }, mytouchmove: function (e) { var start ...

  10. javascript 分号理解

    javascript自动填补分号的规则 在说要不要写分号之前,先了解一下javascript自动填补分号的规则. 在<javascript权威指南>中有一段话“如果一条语句以“(”.“[” ...