Cover Image for [Boot camp for Beginners] B - Palace [Rust]

[Boot camp for Beginners] B - Palace [Rust]

概要

AtCoder Problems: Boot camp for Beginners をRustで解いてみる

学んだことmemo

  • 普通に計算するだけでいけそう...?
  • と思ったが Rust だと罠があった
    • Tx0.006T - x * 0.006 を普通に計算してしまうと f64 などになるが、これはソートできないので最小地点を求めることができない
  • ではどうするか
    • 全部 1000倍すると 1000Tx61000T - x * 6 になって float 使わなくて済む。比較するとき 1000A1000A と比較すればいい
    • usize で計算してるとマイナスになった時に困るので、abs_diff() で差の絶対値を求めて比較すると良い
  • min_by_key を覚えたが便利だった
    • mapした結果の最小を求めるという処理をショートハンドで書ける

参考