結果
問題 | No.83 最大マッチング |
ユーザー |
|
提出日時 | 2015-10-14 18:38:32 |
言語 | Ruby (3.4.1) |
結果 |
AC
|
実行時間 | 150 ms / 5,000 ms |
コード長 | 768 bytes |
コンパイル時間 | 43 ms |
コンパイル使用メモリ | 7,424 KB |
実行使用メモリ | 12,416 KB |
最終ジャッジ日時 | 2024-07-21 07:44:34 |
合計ジャッジ時間 | 1,994 ms |
ジャッジサーバーID (参考情報) |
judge2 / judge5 |
(要ログイン)
ファイルパターン | 結果 |
---|---|
sample | AC * 3 |
other | AC * 10 |
コンパイルメッセージ
Syntax OK
ソースコード
#! ruby # yukicoder My Practice # author: Leonardone @ NEETSDKASU N = gets.to_i # 頭の中を整理するためのメモ # 各数字を作るのに必要な本数 # 0 ... 6本 # 1 ... 2本 # 2 ... 5 # 3 ... 5 # 4 ... 4 # 5 ... 5 # 6 ... 6 # 7 ... 3 # 8 ... 7 # 9 ... 6 # 上記より本数ごとに作れる数 # 2本 ... 1 # 3本 ... 1,7 # 4 ... 11,4,7 # 5 ... 11,17,2,3,4,5,71 # 6 ... 0,111,14,17,2,3,41,5,6,71,77,9 # 7 ... 0,111,117,12,13,14,15,171,21,31,41,47,51,57,6,711,77,8,9 # まぁ要するに # 本数が偶数なら1を並べたものが最大、並べる本数はN/2 # 本数が奇数なら頭を7にして残り1を並べたものが最大、並べる本数はfloor(N/2)-1 if N.even? puts "1"*N.div(2) else puts "7"+"1"*N.div(2).pred end