Advertisement
Guest User

Untitled

a guest
Nov 28th, 2014
148
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Java 1.80 KB | None | 0 0
  1. import java.util.*;
  2. public class Zd15 {
  3.     public static void main(String[] args) {
  4.         long timestart=System.currentTimeMillis();
  5.         Scanner sc = new Scanner(System.in);
  6.         int k = sc.nextInt();
  7.         String s = sc.next();
  8.         int[] a = stringToBig(s);
  9.         for (int i = 0; i < k-1; i++) {
  10.             String c = sc.next();
  11.             int[] b = stringToBig(c);
  12.             a=proizv(a,b);
  13.         }
  14.  
  15.         long timeend=System.currentTimeMillis() ;
  16.         System.out.println("THIS TIME "+ (timeend-timestart));
  17.         out(a);
  18.  
  19.     }
  20.     public static int[] stringToBig(String c){
  21.                     int[] b = new int[c.length()];//остальные члены
  22.             for (int j = 0; j < c.length(); j++) {
  23.                 b[j] = (c.charAt(j)- '0');
  24.             }
  25.         return  b;
  26.     }
  27.     public static int[] proizv(int[] a, int[] b) {
  28.         int[] c = new int[a.length + b.length];
  29.         boolean used[] = new boolean[c.length];
  30.         for(int i = a.length - 1;i >= 0; i--) {
  31.             for (int j = b.length - 1; j >= 0; j--) {
  32.                 c[i + j] += a[i] * b[j];
  33.                 c[i+j+1]= c[i+j]/10;
  34.                 c[i+j]%=10;
  35.                 used[(i + j)] = true;
  36.             }
  37.         }
  38.  
  39.         if (!used[c.length - 1] && c[0] / 10 == 0){
  40.             int[] tmp = c;
  41.             c = new int[c.length - 1];
  42.             for (int k = 0; k < c.length; k++)
  43.                 c[k] = tmp[k];
  44.         }
  45.         int d = 0;
  46.         if (c[0] / 10 > 0){
  47.             for (int k = c.length - 1; k > 0; k--)
  48.                 c[k] = c[k - 1];
  49.             c[0] = 0;
  50.         }
  51.         return c;
  52.     }
  53.     public static void out(int[] a) {
  54.         System.out.println();
  55.         for (int val : a) {
  56.             System.out.print(val);
  57.         }
  58.     }
  59.  
  60. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement