HDU 2017 多校联赛4 1011 Time To Get Up

来源:互联网 发布:人工智能阅读语文答案 编辑:程序博客网 时间:2024/06/05 09:45

Problem Description

Little Q’s clock is alarming! It’s time to get up now! However, after reading the time on the clock, Little Q lies down and starts sleeping again. Well, he has 5 alarms, and it’s just the first one, he can continue sleeping for a while.

Little Q’s clock uses a standard 7-segment LCD display for all digits, plus two small segments for the ”:”, and shows all times in a 24-hour format. The ”:” segments are on at all times.

这里写图片描述

Your job is to help Little Q read the time shown on his clock.

Input

The first line of the input contains an integer T(1≤T≤1440), denoting the number of test cases.

In each test case, there is an 7×21 ASCII image of the clock screen.

All digit segments are represented by two characters, and each colon segment is represented by one character. The character ”X” indicates a segment that is on while ”.” indicates anything else. See the sample input for details.

Output

For each test case, print a single line containing a string t in the format of HH:MM, where t(00:00≤t≤23:59), denoting the time shown on the clock.

Sample Input


.XX…XX…..XX…XX. 
X..X….X……X.X..X 
X..X….X.X….X.X..X 
……XX…..XX…XX. 
X..X.X….X….X.X..X 
X..X.X………X.X..X 
.XX…XX…..XX…XX.

Sample Output

02:38

题目大意:

这就是给你一个7*21的字符矩阵,看它打印的时间是多少。下面是0—9的打印方法。每个数字占4个字符,数字间空有一格,方便区分。 
.xx. …. .xx. .xx. …. .xx. .xx. .xx. .xx. .xx. 
x..x …x …x …x x..x x… x… …x x..x x..x 
x..x …x …x …x x..x x… x… …x x..x x..x 
…. …. .xx. .xx. .xx. .xx. .xx. …. .xx. .xx. 
x..x …x x… …x …x …x x..x …x x..x …x 
x..x …x x… …x …x …x x..x …x x..x …x 
.xx. …. .xx. .xx. …. .xx. .xx. …. .xx. .xx.

c++

#include<iostream>#include<cstdio>#include<cstring>using namespace std;char m[8][25];int sz(int x){    if(m[3][x]=='X'&&m[3][x+1]=='X')    {        if(m[2][x-1]=='.'&&m[1][x-1]=='.')        {            if(m[4][x-1]=='.'&&m[5][x-1]=='.')                return(3);            else return(2);        }        else        {            if(m[2][x+2]=='.'&&m[1][x+2]=='.')            {                if(m[4][x-1]=='.'&&m[5][x-1]=='.')                    return(5);                else return(6);            }            else            {                if(m[4][x-1]=='.'&&m[5][x-1]=='.')                {                    if(m[6][x]=='.'&&m[6][x+1]=='.')                        return(4);                    else return(9);                }                else return(8);            }        }    }    else    {        if(m[6][x]=='.'&&m[6][x+1]=='.')        {            if(m[0][x]=='.'&&m[0][x+1]=='.')                return(1);            else return(7);        }        else return(0);    }}int main(){    int a,b,c,d,e;    cin>>a;    getchar();    while(a--)    {        for(b=0;b<7;b++)        {            for(c=0;c<21;c++)                scanf("%c",&m[b][c]);            getchar();        }        b=sz(1);        c=sz(6);        d=sz(13);        e=sz(18);        printf("%d%d:%d%d\n",b,c,d,e);    }    return 0;}





原创粉丝点击