96.時刻



  • 整数Nを入力する場合は、00時00分00秒からN時59分59秒までのすべての時刻のうち、少なくとも1つの3を含むプログラムを作成します.

  • 例えば、1を入力すると、少なくとも1つの3が含まれているため、以下は必要数の時刻である.
    00時00分03秒
    00時13分30秒
    次は3を含まないので数えられない時刻です.
    00時02分55秒
    01時27分45秒

  • 入力条件
  • 第1行は、整数Nを入力する.(0 ≤ N ≤ 23)

  • しゅつりょくじょうけん
  • 00時00分00秒からN時59分59秒までのすべての時点において、3は1つのすべての状況の数量出力を含む.
  • 1.Brootforceで解く

    
    
    import time
    
    h = int(input())
    
    start = time.time()
    
    
    
    count = 0
    
    for i in range(h + 1):
      for j in range(60):
        for k in range(60):
          #매 시각 안에 '3'이 포함되어 있다면 카운트 증가
          if '3' in str(i) + str(j) + str(k):
            count += 1
            
    print(count)
    
    print(time.time()-start)
    
    

  • 完全検索アルゴリズムは可能な場合にすべての数をチェックする方法であり、完全検索問題も重要な代表的な問題タイプを実現する.

  • 一般に,完全ナビゲーションアルゴリズムは非効率な時間的複雑さを有し,データ量が大きい場合に正常に動作しない可能性がある.

  • 確認が必要な全データ数が100万個以下の場合は、完全ナビゲーションを使用するのが適切です.

  • ここで、各時刻を文字列に変換し、文字列に'3'が含まれているかどうかを確認します.
  • 03時20分35秒であることが確認された場合、'032035'として作成し、'3''032035'に含まれているかどうかを確認する方法を使用する.