結果

問題 No.167 N^M mod 10
ユーザー tshig
提出日時 2016-08-09 10:47:07
言語 Ruby
(3.4.1)
結果
AC  
実行時間 91 ms / 1,000 ms
コード長 518 bytes
コンパイル時間 51 ms
コンパイル使用メモリ 7,296 KB
実行使用メモリ 12,288 KB
最終ジャッジ日時 2024-09-22 01:35:03
合計ジャッジ時間 3,617 ms
ジャッジサーバーID
(参考情報)
judge2 / judge1
このコードへのチャレンジ
(要ログイン)
ファイルパターン 結果
sample AC * 2
other AC * 27
権限があれば一括ダウンロードができます
コンパイルメッセージ
Syntax OK

ソースコード

diff #

class Calc0167
  def initialize(args)
    args = args.map { |l| l.chomp.split(/\s+/) }
    @n = args.shift.first
    @m = args.shift.first
  end

  TABLE = [
    [0],
    [1],
    [6, 2, 4, 8],
    [1, 3, 9, 7],
    [6, 4],
    [5],
    [6],
    [1, 7, 9, 3],
    [6, 8, 4, 2],
    [1, 9]
  ]

  def run
    n = @n[-1..-1].to_i
    m = (@m.size == 1 ? @m : @m[-2..-1]).to_i
    if @m == '0'
      1
    else
      TABLE[n][m % TABLE[n].size]
    end
  end
end

puts Calc0167.new(STDIN.readlines).run if __FILE__ == $0
0