Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #include<stdio.h>
- int pow(int x,int up){
- if(up == 0)return 1;
- int tx = x;
- for(int i = 2 ; i <= up ; i ++){
- x*=tx;
- }
- return x;
- }
- int main()
- {
- int T;
- scanf("%d",&T);
- for(int t = 0 ; t < T ; t ++){
- int n;
- scanf("%d",&n);
- int base = 10 - n;
- int prebase = 0;
- bool check[10];for(int i = 0 ; i < 10 ; i ++)check[i] = true;
- for(int i = 0 ; i < n ; i ++){
- int x;
- scanf("%d",&x);
- check[x] = false;
- }
- int value[10]; for(int i = 0 ; i < 10 ; i ++)value[i] = -1;
- int val = 0;
- for(int i = 0 ; i < 10 ; i++){
- if(check[i]){
- value[i] = val++;
- if(i < 6){
- prebase ++;
- }
- }
- }
- int a,b,c;
- char ch;
- scanf("%d%c%d%c%d",&a,&ch,&b,&ch,&c);
- int sum = 0;
- // printf("Test (%d,%d)\n",value[c/10]*pow(base,1),value[c%10]*pow(base,0));
- sum += value[c%10]*pow(base,0);
- c /= 10;
- sum += value[c]*pow(base,1);
- sum += value[b%10]*pow(base,2);
- b /= 10;
- sum += value[b]*pow(base,3);
- int sumMM = 0;
- int cnt = 0;
- while(a!=0){
- sumMM += value[a%10]*pow(base,cnt++);
- a/=10;
- }
- // printf("%d * %d\n",sumMM,pow(base,3)*prebase);
- sum += sumMM*pow(base,3)*prebase;
- // printf("Test sum : %d\n",sum);
- int x,y,z;
- z = sum%100;
- sum/=100;
- y = sum%60;
- sum/=60;
- x = sum;
- printf("%02d:%02d:%02d\n",x,y,z);
- }
- return 0;
- }
Add Comment
Please, Sign In to add comment