0
1

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 1 year has passed since last update.

0.はじめに
 コンテスト予選ということで難しい問題という先入観が
 強すぎてA問題のみ正解という惨憺たる結果に。
 翌日やり直してみると、BC問題も普通に解けたであろうと
 いうことに気づき、惜しいことをしました。

 レートは-41と急落・・・。

1.A - To Be Saikyo
 入力されたリストから、2項目以降を切り出したリストBを作成。
 リストBの最大値より、リストAの1番目の数値が大きければそのまま
 リストAの1番目の数値を出力
 リストAの1番目の数値がリストBの最大値以下の場合
 リストBの最大値から、リストAの1番目の数値を減算した
 数値に1を加算して出力。

 https://atcoder.jp/contests/abc313/submissions/44260632

2.B - Who is Saikyo?
 問題を勘違いして、すべての値の順序を求めるために
 四苦八苦していて時間切れとなりました。
 
 翌日見返してみると、最強だけ求めればよいことに気づき
 (回答の出力を考えればそれはそうとなりますが・・・。)
 ACとなりました。

 【元の考え方】
  M組の勝敗のうち、だれにも勝てない人(N位の人)が
  一人に決まるかを検索。
  一人に決まらなければ、-1を出力して終了
  一人に決まったら、M組からN位が弱い情報を
  省いて、だれにも勝てない人(N-1位の人)が
  一人に決まるかを検索・・・と続けていき、1位までを
  求める
   →問題として、全員の順位が一意に決まる情報が
    提供されないためWA

 【ACとなった考え方】
  M組の勝敗のうち、だれにも負けない人(1位の人)が
  一人に決まるかを検索
  一人に決まらなければ-1を出力して終了
  一人に決まるのであればその人を出力して終了

 https://atcoder.jp/contests/abc313/submissions/44319556

3.C - Approximate Equalization 2
 試験中に一回提出しましたがWAとなり、B問題に戻ってしまったので
 正解できませんでしたが、翌日見直したところWAはちょっとした
 バグのせいだったので、もう少し粘れば・・・と悔やまれました。

 【考え方】
  リストAの合計をNで割った(切り捨て)値を基準値AAとし
  リストAの合計をNで割った余りを基準値を超える個数AMとした場合
  最終的にリストAの値は、AM個のAA+1とN-AM個のAAとなる。

 【実装】
  1)リストAの合計をNで割った(切り捨て)値AAを求める
  2)リストAの合計をNで割った余りAMを求める
  3)リストAを降順に並べる
  4)ans=0を定義
  5)以下インデックスiでN回ループ
   5-1)AMが1以上の時、変数CAA=AA+1
   5-2)AMが0以下の時、変数CAA=AA
   5-3)ansにA[i]-CAAの絶対値を加算
   5-4)AMから1マイナス
  6)ansを2で割った値を出力して終了
  
 【補足】
  最初に実装した際、3)のソートを昇順に並べてしまったのと
  5-4のAMから1マイナスする部分が抜けていたため
  WAとなってしまいました。

 https://atcoder.jp/contests/abc313/submissions/44319691

以上

0
1
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
1

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?