• <ins id="pjuwb"></ins>
    <blockquote id="pjuwb"><pre id="pjuwb"></pre></blockquote>
    <noscript id="pjuwb"></noscript>
          <sup id="pjuwb"><pre id="pjuwb"></pre></sup>
            <dd id="pjuwb"></dd>
            <abbr id="pjuwb"></abbr>

            Uriel's Corner

            Research Associate @ Harvard University / Research Interests: Computer Vision, Biomedical Image Analysis, Machine Learning
            posts - 0, comments - 50, trackbacks - 0, articles - 594

            POJ 1676 What time is it?---模擬

            Posted on 2009-10-06 21:55 Uriel 閱讀(451) 評論(0)  編輯 收藏 引用 所屬分類: POJ模擬

            暑假以來一直沒做過模擬。。急劇退化。。搞了數小時。。WA到死啊。。。
            沒什么trick,沒什么好說的。。。純模擬。。。
            改來改去,改來改去。。代碼不是一般的惡心啊。。。

            /*Problem: 1676  User: Uriel 
               Memory: 180K  Time: 0MS 
               Language: C++  Result: Accepted
            */
             

            #include
            <stdio.h>
            #include
            <stdlib.h>
            #include
            <string.h>

            int stnd[10][3][3]={{{0,1,0},{2,0,2},{2,1,2}},{{0,0,0},{0,0,2},{0,0,2}},{{0,1,0},{0,1,2},{2,1,0}},
                                
            {{0,1,0},{0,1,2},{0,1,2}},{{0,0,0},{2,1,2},{0,0,2}},{{0,1,0},{2,1,0},{0,1,2}},
                                
            {{0,1,0},{2,1,0},{2,1,2}},{{0,1,0},{0,0,2},{0,0,2}},{{0,1,0},{2,1,2},{2,1,2}},
                                
            {{0,1,0},{2,1,2},{0,1,2}}}
            ;
            int i,j,k,m,cse,g,h,n,res,temp,y,nn; 
            int minute,hour,crt[4];
            int sum[2][4];//每個時間每一位有幾種表示 
            int x[2];//每個時間有幾種可能表示 
            int flag[5][5][12];//保存每一位的每一格,1為_,2為|,0為空 
            int num[10][5][5];//每一位每種可能的具體值 
            int Time[5][10010];//每個時間每種的可能值,化為分鐘 
            char t[5][5][20];//輸入                                   
                                
            int main()
            {
                scanf(
            "%d",&cse);
                
            while(1)
                
            {
            N:      
            if(!cse)break;
                    cse
            --;
                    memset(t,
            0x00,sizeof(t));
                    
            for(i=0;i<3;i++)
                    
            {
                        getchar();
                        
            for(j=0;j<12;j++)
                        
            {               
                            scanf(
            "%c",&t[0][i][j]);
                        }

            //            t[0][i][12]='\0';
            //            printf("*%s*\n",t[0][i]);
                        getchar();
            //            getchar();
                        for(j=0;j<12;j++)
                        
            {
                            scanf(
            "%c",&t[1][i][j]);
                        }

            //            printf("*%s*\n",t[1][i]);
                    }

            /*        for(i=0;i<3;i++)
                    {
                        printf("%s",t[0][i]);
                        printf("%s",t[1][i]);
                        printf("\n");
                    }                   
            */
                
                            
            //        getchar();
            //        getchar();
            //        for(i=0;i<26;i++)getchar();
            //        getline();
                    for(i=0;i<3;i++)//每個case顯示一共3行 
                    {
                        
            for(j=0;j<12;j++)
                        
            {
                            
            if(t[0][i][j]=='_')
                            
            {
                                flag[
            0][i][j]=1;
                            }

                            
            else if(t[0][i][j]=='|')
                            
            {
                                flag[
            0][i][j]=2;
                            }

                            
            else
                            
            {
                                flag[
            0][i][j]=0;
                            }

                            
            if(t[1][i][j]=='_')
                            
            {
                                flag[
            1][i][j]=1;
                            }

                            
            else if(t[1][i][j]=='|')
                            
            {
                                flag[
            1][i][j]=2;
                            }

                            
            else
                            
            {
                                flag[
            1][i][j]=0;
                            }

                        }

                    }

            /*        for(i=0;i<3;i++)//每個case顯示一共3行 
                    {
                        for(j=0;j<12;j++)
                        {
                            printf("%d ",flag[0][i][j]);
                        }
                        for(j=0;j<12;j++)
                        {
                            printf("%d ",flag[1][i][j]);
                        }
                        printf("\n");
                    }                   
            */

                    
            for(i=0;i<2;i++)//pre and after
                    {
                        
            for(j=0;j<4;j++)//sum of digits
                        {
                            sum[i][j]
            =0;
                            
            for(h=0;h<10;h++)
                            
            {
                                
            if(j==0 && h>2)break;
                                
            if(j==2 && h>5)break;
                                y
            =0;
                                
            for(k=0;k<3;k++)
                                
            {
                                    
            for(g=0;g<3;g++)
                                    
            {                            
                                        
            if(flag[i][k][g+3*j]!=stnd[h][k][g] && flag[i][k][g+3*j])
                                        
            {
                                            y
            =1;
                                            
            goto M;
                                        }

                                    }

                                }

            M:                  
            if(!y)
                                
            {
            //                        printf("*");
                                    sum[i][j]++;
                                    num[sum[i][j]
            -1][i][j]=h;
            //                        if(j==1 && i==1)printf("*h=%d*",h);
                                }

                            }

                            
            if(!sum[i][j])
                            
            {
                                printf(
            "Not Sure\n");
                                
            goto N;
                            }

            //                if(sum!=1)
            //                {
            //                    printf("Not Sure\n");
            //                    goto M;
            //                }
                        }

                    }

                    
                    
            for(i=0;i<2;i++)
                    
            {
                        x[i]
            =0
                        
            for(j=0;j<sum[i][0];j++)
                        
            {
                            
            for(k=0;k<sum[i][1];k++)
                            
            {
                                
            for(h=0;h<sum[i][2];h++)
                                
            {
                                    
            for(m=0;m<sum[i][3];m++)
                                    
            {                           
                                        Time[i][x[i]
            ++]=(num[j][i][0]*10+num[k][i][1])*60+num[h][i][2]*10+num[m][i][3];
                                    }

                                }

                            }

                        }

                    }

                    res
            =0;
                    
            for(i=0;i<x[0];i++)
                    
            {
                        
            for(j=0;j<x[1];j++)
                        
            {
            //                printf("*%d %d*\n",Time[0][i],Time[1][j]);
                            if(Time[0][i]<1440 && Time[1][j]<1440 && (Time[0][i]-Time[1][j]==15 || Time[1][j]-Time[0][i]==1425))
                            
            {
            //                    printf("xx%d:%d %d:%d\n",Time[0][i]/60,Time[0][i]%60,Time[1][j]/60,Time[1][j]%60);
                                res++;
                                temp
            =i;
            //                    nn=j;
                            }

                        }

                    }

            //        printf("*%d*\n",res);
            //        printf("*%d %d*\n",Time[0][temp],Time[1][nn]);
                    if(res==1)
                    
            {
                        minute
            =Time[0][temp]%60;
                        hour
            =Time[0][temp]/60;
                        crt[
            0]=hour/10;
                        crt[
            1]=hour%10;
                        crt[
            2]=minute/10;
                        crt[
            3]=minute%10;
                        printf(
            "%d%d%d%d\n",crt[0],crt[1],crt[2],crt[3]);
                    }

                    
            else
                    
            {
                        printf(
            "Not Sure\n");
                    }
                                                               
                }

            //    system("PAUSE");
                return 0;
            }
                                  
                    
            久久久国产一区二区三区| 99久久久精品| 伊人久久五月天| 色综合久久88色综合天天 | 久久国产成人亚洲精品影院| 久久久免费观成人影院| 亚洲欧美国产日韩综合久久| 热99RE久久精品这里都是精品免费| A级毛片无码久久精品免费| a级成人毛片久久| 久久99精品久久久久久野外| 国产69精品久久久久观看软件| 996久久国产精品线观看| 九九久久精品无码专区| 久久久久亚洲精品天堂| 国产无套内射久久久国产| 久久综合香蕉国产蜜臀AV| 91精品国产91久久久久久青草| 久久WWW免费人成一看片| 欧美亚洲另类久久综合| 狠狠色狠狠色综合久久| 精品久久久久久无码免费| 91视频国产91久久久| 亚洲国产成人久久综合野外 | 国产精品九九久久免费视频| 99久久做夜夜爱天天做精品| 国产福利电影一区二区三区,免费久久久久久久精 | 一本色道久久88—综合亚洲精品| 国产精品久久99| 久久综合精品国产二区无码| 国产99久久久国产精品小说| 欧美久久综合九色综合| 18岁日韩内射颜射午夜久久成人 | 国产亚洲婷婷香蕉久久精品| 亚洲人成网亚洲欧洲无码久久| 欧美麻豆久久久久久中文| 久久天天躁狠狠躁夜夜2020 | 久久国产精品无码一区二区三区 | 国产精品久久新婚兰兰| 欧美激情精品久久久久久久九九九| 99久久精品国产一区二区|