zoukankan      html  css  js  c++  java
  • HackerRank

    Greedy beats DP this time...

    I tried several DP solutions first, but all failed with RETLE. If you 'feel' the problem, Greedy should be working:

    (A solution from discussion)

    def getPivot(n):
        while n > 0:
            if n % 3 == 0:
                break;
            else:
                n -= 5
        return n
            
    T = input()
    for i in xrange(T):
        N = int(input())
        pivot = getPivot(N)
        if pivot < 0:
            print -1
        else:
            str = ''
            repeat = pivot / 3
            while repeat > 0:
                str += '555'
                repeat -= 1
            repeat = (N - pivot) / 5
            while repeat > 0:
                str += '33333'
                repeat -= 1
            print str
  • 相关阅读:
    ARC 080
    CodeForces
    [Lydsy1806月赛] 路径统计
    AGC 022 C
    AGC 022 B
    AGC 020 B
    UVA
    AGC 018 A
    python
    python
  • 原文地址:https://www.cnblogs.com/tonix/p/4308337.html
Copyright © 2011-2022 走看看