UVA 11005 Java

  1. import java.util.*;
  2. import static java.lang.System.*;
  3.  
  4. public class main{
  5. public static void main(String[] args) {
  6. Scanner sc=new Scanner(System.in);
  7. int cases = sc.nextInt();
  8. for(int i = cases; i > 0; i--)
  9. {
  10. System.out.printf("Case %d:\r\n", cases -i +1);
  11. int[] bases = new int[36];
  12. for(int j = 0; j < 36; j++)
  13. bases[j] = sc.nextInt();
  14. int changes = sc.nextInt();
  15. for(int k = 0; k < changes; k++)
  16. {
  17. int min = Integer.MAX_VALUE;
  18. int num = sc.nextInt();
  19. int[] total = new int[37];
  20. for(int j = 2; j < 37; j++)
  21. {
  22. int numtemp = num;
  23. while(numtemp > 0)
  24. {
  25. int temp = numtemp % j;
  26. numtemp /= j;
  27. total[j] += bases[temp];
  28. }
  29. if(total[j] < min)
  30. min = total[j];
  31. }
  32. System.out.printf("Cheapest base(s) for number %d:", num);
  33. for(int j=2; j < 37; j++)
  34. if(min == total[j])
  35. System.out.print(" " + j);
  36. System.out.println();
  37. }
  38. if(i != 1)
  39. System.out.println();
  40. }
  41. }
  42. };
  43.  

留言

這個網誌中的熱門文章

C# 井字遊戲