0
1

More than 1 year has passed since last update.

0.はじめに
 最近毎週レギュラーが開催されるようになり、みるみるランクが下がるように・・・。
 1問必解を目指しています。

1.A - Equal Hamming Distances
 久々に2時間フルに取り組みましたが、回答できませんでした。
 その後リベンジし、AC頂きました。

 回答の考え方
  1)すべて0の文字列と比較した場合の
    S列とT列それぞれのハミング数を取得
   1-1)SとTのハミング数が同じ→ALL0が正解
   1-2)SとTのハミング数を足すと奇数→解なし(-1)
   1-3)2へ
  2)S列T列を右(添え字j)からチェックしていく
    回答文字列”Ans”の初期値はALL”0”
   2-1)S[j]==T[j]の時
    Continue
   2-2)Sのハミング数が大きくかつ、S[j]が”1”の時
    Ans[j]に1をセット
    Sのハミング数から1を引き、Tのハミング数に1を足す
   2-3)Tのハミング数が大きい場合かつ、T[j]が1の時
    Ans[j]に1をセット
    Tのハミング数から1を引き、Sのハミング数に1を足す
   2-4)SとTのハミング数が同じ場合ループ終了
      そうでない場合は、j+1
  3)Ansを連結して表示。

 上記を実装するも、本番の時には、1)の処理でハミング数を配列にして 
 セットしたりと迷走し、正しい答えが導き出せず。

 数日後、落ち着いて実装&テストしたところすんなりクリアできました・・・。

 https://atcoder.jp/contests/arc151/submissions/35803815

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