hdu 1015
来源:互联网 发布:电算化会计软件下载 编辑:程序博客网 时间:2024/05/16 11:53
这是第一次用java搞acm,第一次提交时CE。后来才知道类名必须是Main,果断AC。另外发现数组调用的equals()是Object里面未经改写的方法,比较的是引用。
ps:一个简单的dfs。
import java.util.Arrays;import java.util.Scanner;public class Main{ private static char ch[]; private static String str; private static int arr[],temp[],target; private static boolean found=false; private static int pow(int a,int b) { int tem=1; for(int i=0;i<b;i++) { tem*=a; } return tem; } private static boolean dfs(int n) { if(found) { return found; } if(n==5) { if(temp[0]==temp[1] || temp[1]==temp[2] || temp[2]==temp[3] || temp[3]==temp[4] || temp[4]==temp[0]) { return false; } if(temp[0]-pow(temp[1],2)+pow(temp[2],3)-pow(temp[3],4)+pow(temp[4],5)==target) { for(int k=0;k<5;k++) System.out.printf("%c",temp[k]+64); System.out.println(); found=true; return found; } } else { for(int i=0;i<arr.length;i++) { temp[n]=arr[i]; dfs(n+1); } } return found; } public static void main(String args[]) { Scanner cin=new Scanner(System.in); while(true) { target=cin.nextInt(); str=cin.next(); ch=str.toCharArray(); if(target==0 && str.equals("END")) return; Arrays.sort(ch); arr=new int[ch.length]; temp=new int[5]; for(int i=0;i<arr.length;i++) { arr[i]=ch[ch.length-1-i]-64; } if(!dfs(0)) { System.out.println("no solution"); } found=false; } }}
- HDU 1015
- hdu 1015
- hdu 1015
- hdu-1015
- hdu 1015
- hdu 1015
- hdu 1015
- hdu 1015
- HDU 1015
- HDU 1015
- HDU - 1015 Safecracker
- 开闸。放水!!hdu 1015
- HDU 1015 dfs回溯
- HDU 1015 Safecracker
- HDU 1015 Safecracker
- Hdu 1015 Safecracker
- hdu 1015 Safecracker
- hdu 1015 Safecracker(枚举)
- hdu17891 Doing Homework again 贪心
- zoj 1091 bfs
- poj1141Brackets Sequence (DP)
- Catalan数的一些应用
- poj1191 棋盘分割 (DP)
- hdu 1015
- ICPC_shanghai_2000_舞蹈家 (DP)
- hdu 1754 I Hate It (线段树)
- iOS的基本设计模式
- JSF 2.0简介:Ajax对页面的增加与删除操作例子
- poj2752 Seek the Name, Seek the Fame (串)
- patchGuard v2
- Stanford 算法入门 week 6 Bloom Filter, Hash Function, Search Tree
- hdu1233 还是畅通工程 ( 最小生成树)