SuitNdtie

Stop watch

Apr 27th, 2019
29
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C++ 1.33 KB | None | 0 0
  1. #include<stdio.h>
  2.  
  3. int pow(int x,int up){
  4.     if(up == 0)return 1;
  5.     int tx = x;
  6.     for(int i = 2 ; i <= up ; i ++){
  7.         x*=tx;
  8.     }
  9.     return x;
  10. }
  11.  
  12. int main()
  13. {
  14.     int T;
  15.     scanf("%d",&T);
  16.     for(int t = 0 ; t < T ; t ++){
  17.         int n;
  18.         scanf("%d",&n);
  19.         int base = 10 - n;
  20.         int prebase = 0;
  21.         bool check[10];for(int i = 0 ; i < 10 ; i ++)check[i] = true;
  22.         for(int i = 0 ; i < n ; i ++){
  23.             int x;
  24.             scanf("%d",&x);
  25.             check[x] = false;
  26.         }
  27.         int value[10]; for(int i = 0 ; i < 10 ; i ++)value[i] = -1;
  28.         int val = 0;
  29.         for(int i = 0 ; i < 10 ; i++){
  30.             if(check[i]){
  31.                 value[i] = val++;
  32.                 if(i < 6){
  33.                     prebase ++;
  34.                 }
  35.             }
  36.         }
  37.        
  38.         int a,b,c;
  39.         char ch;
  40.         scanf("%d%c%d%c%d",&a,&ch,&b,&ch,&c);
  41.         int sum = 0;
  42.     //  printf("Test (%d,%d)\n",value[c/10]*pow(base,1),value[c%10]*pow(base,0));
  43.         sum += value[c%10]*pow(base,0);
  44.         c /= 10;
  45.         sum += value[c]*pow(base,1);
  46.        
  47.         sum += value[b%10]*pow(base,2);
  48.         b /= 10;
  49.         sum += value[b]*pow(base,3);
  50.        
  51.         int sumMM = 0;
  52.         int cnt = 0;
  53.         while(a!=0){
  54.             sumMM += value[a%10]*pow(base,cnt++);
  55.             a/=10;
  56.         }
  57.     //  printf("%d * %d\n",sumMM,pow(base,3)*prebase);
  58.         sum += sumMM*pow(base,3)*prebase;
  59.     //  printf("Test sum : %d\n",sum);
  60.         int x,y,z;
  61.         z = sum%100;
  62.         sum/=100;
  63.         y = sum%60;
  64.         sum/=60;
  65.         x = sum;
  66.         printf("%02d:%02d:%02d\n",x,y,z);
  67.     }
  68.     return 0;
  69. }
Add Comment
Please, Sign In to add comment