当前位置: 代码迷 >> PHP >> http://acm.hdu.edu.cn/showproblem.php?pid=3547昨天比赛的题目;立方体顶点染色有关问题
  详细解决方案

http://acm.hdu.edu.cn/showproblem.php?pid=3547昨天比赛的题目;立方体顶点染色有关问题

热度:740   发布时间:2012-08-15 16:57:17.0
http://acm.hdu.edu.cn/showproblem.php?pid=3547昨天比赛的题目;立方体顶点染色问题

本题是立方体顶点染色,polya计数的一部分:有公式直接套,(k^8+17*k^4+6*k^2)/24;其中k表示颜色数;由于题目是高精度,明显用Java可搞,但是悲催的是nbutOJ不支持直接ORZ。。。接下来开始了wa的悲催结果,,,,

import java.util.*;
import java.math.*;
import java.lang.*;
public class Main {

	/**
	 * @param args
	 */
	public static void main(String[] args) {
		// TODO Auto-generated method stub
		 
		
	Scanner cin=new Scanner(System.in);
	 int t=cin.nextInt();
for(int i=1;i<=t;i++)
	 {
       BigDecimal a=cin.nextBigDecimal(),b=BigDecimal.valueOf(24),c,d=BigDecimal.valueOf(17);
       
       	   c=(a.pow(8).add(d.multiply(a.pow(4))).add(BigDecimal.valueOf(6).multiply(a.pow(2)))).divide(b);
       	   String str=c.toPlainString();
     //  	System.out.println("C==="+c+"  "+"str=="+str);
       	System.out.print("Case "+i+": ");
       	   if(str.length()>15)
       	   {
       		   for(int j=str.length()-15;j<str.length();j++)
       		   {
       			   System.out.print(str.charAt(j));
       			   
       		   }
       		System.out.println();
       	   }else{
       		   
       		   System.out.println(str);
       	   }
	 }
	}

}


  相关解决方案