zoukankan      html  css  js  c++  java
  • codeforces-110A

    A. Nearly Lucky Number
    time limit per test
    2 seconds
    memory limit per test
    256 megabytes
    input
    standard input
    output
    standard output

    Petya loves lucky numbers. We all know that lucky numbers are the positive integers whose decimal representations contain only the lucky digits 4 and 7. For example, numbers 47, 744, 4 are lucky and 5, 17, 467 are not.

    Unfortunately, not all numbers are lucky. Petya calls a number nearly lucky if the number of lucky digits in it is a lucky number. He wonders whether number n is a nearly lucky number.

    Input

    The only line contains an integer n (1 ≤ n ≤ 1018).

    Please do not use the %lld specificator to read or write 64-bit numbers in С++. It is preferred to use the cin, cout streams or the %I64d specificator.

    Output

    Print on the single line "YES" if n is a nearly lucky number. Otherwise, print "NO" (without the quotes).

    Examples
    input
    40047
    output
    NO
    input
    7747774
    output
    YES
    input
    1000000000000000000
    output
    NO
    Note

    In the first sample there are 3 lucky digits (first one and last two), so the answer is "NO".

    In the second sample there are 7 lucky digits, 7 is lucky number, so the answer is "YES".

    In the third sample there are no lucky digits, so the answer is "NO".

    #include<stdio.h>
    int lucky(long long a)
    {
        if (a == 4 || a == 7)
            return 0;
        if (a == 0)
            return -1;
        else
        {
            while (a != 0)
            {
                if (a % 10 == 4 || a % 10 == 7)
                    a = a / 10;
                else
                    return -1;
            }
            return 0;
        }
    }
    void main()
    {
        long long m;
        scanf("%lld", &m);
        long long sum = 0;
        while (m != 0)
        {
            if (m % 10 == 4 || m % 10 == 7)
                sum++;
            m = m / 10;
        }
        if (lucky(sum) == 0)
            printf("YES
    ");
        else
            printf("NO
    ");
    }
  • 相关阅读:
    Spring Boot源码分析-配置文件加载原理
    Spring Boot源码分析-启动过程
    Spring Cloud Alibaba基础教程:Nacos服务发现与配置管理
    JVM(九):垃圾回收算法
    JVM(八):Java 对象模型
    JVM(七):JVM内存结构
    JVM(六):探究类加载过程-下
    JVM(五):探究类加载过程-上
    JVM(四):深入分析Java字节码-下
    JVM(三):深入分析Java字节码-上
  • 原文地址:https://www.cnblogs.com/chenruijiang/p/7813598.html
Copyright © 2011-2022 走看看