Problem A. Alarm Clock

AC代码(把分钟和小时的笔画列出来暴力就可以了)

Select Code

#include <iostream>
#include <stdio.h>
#include <string.h>
#include <algorithm>
#include <queue>
#include <cmath>
//#include <bits/stdc++.h>
#define inf 0x3f3f3f3f
using namespace std;

int main()
{
    freopen("alarm.in", "r", stdin);
    freopen("alarm.out", "w", stdout);
    int a[10] = {6,2,5,5,4,5,6,3,7,6}, b[30], c[65], n, i, j;
    scanf("%d",&n);
    for(i = 0;i<=24;i++)
    {
        if(i<10)
        {
            b[i] = a[0]+a[i];
        }
        else
            b[i] = a[i/10]+a[i%10];
    }
    for(i = 0;i<=59;i++)
    {
        if(i<10)
        {
            c[i] = a[0]+a[i];
        }
        else
            c[i] = a[i/10]+a[i%10];
    }
    int f = 0;
    for(i = 0;i<=24;i++)
    {
        for(j = 0;j<=59;j++)
        {
            if((b[i]+c[j])==n)
            {
                printf("%.2d:%.2d\n", i, j);
                f = 1;
                break;
            }
        }
        if(f==1)
            break;
    }
    if(f==0)
        printf("Impossible\n");
    return 0;
}

猜你喜欢

转载自blog.csdn.net/qq_41524782/article/details/81938689