# AtCoder: abc241 (Swift)

- 都合により不参加

## [A - Digit Machine](https://atcoder.jp/contests/abc241/tasks/abc241_a)

### 提出
- [提出](https://atcoder.jp/contests/abc241/submissions/29767222)

## [B - Pasta](https://atcoder.jp/contests/abc241/tasks/abc241_b)

### 提出
- [提出](https://atcoder.jp/contests/abc241/submissions/29767333)
- [若干訂正](https://atcoder.jp/contests/abc241/submissions/29835964)

## [C - Connect 6](https://atcoder.jp/contests/abc241/tasks/abc241_c)

- 何度もWAを出した
- 全方向に個別にルールを書いたけれども、記述を増やすと間違いも増える
  - 特に競技とかでWAが出ているけど、その状況でデバッグできないと難しい
- うまくまとまったルールが書けないか考えれるようになりたい
- [takechan3さんの解答](https://atcoder.jp/contests/abc241/submissions/29690994)で [`Never`](https://developer.apple.com/documentation/swift/never)について初めて知った
- 入力をそのまま保持しないで最初から`[Bool]`に変換したのは楽だったし、今後も活用したい
- [semisagiさんの解答](https://atcoder.jp/contests/abc241/submissions/29668618)のパターン化を真似てみた
- なんか、試行錯誤をしている間に、条件を満たさない場合で弾くようになった
- 考えてみたら `0=<y`は必要なかったけど、統一性はある

### 提出
- [提出](https://atcoder.jp/contests/abc241/submissions/29768253)
- [パターン化](https://atcoder.jp/contests/abc241/submissions/29850401)

## [D - Sequence Query](https://atcoder.jp/contests/abc241/tasks/abc241_d)

- 最初、単純な二分探索木で実装してみたけれども、失敗
- 
- semisagiさんの連結リストでの実装を参考にしてみた
- 連結リストを繰り返し使えるように綺麗にしてみたけれど、応用を考えると難しそう
  - 将来的にパターンが見えたら作るかも程度
- 最初に全部の情報を取得して、そこから不要なものを逆に削除する方法は覚えたい
  - ただ、追加のみの場合か
  - 削除が途中で発生する場合はまた他の方法が必要か検討したい
  - 解説の座標圧縮はこの手法のことを指しているのだろうか
- enumが使えると気持ちいい
  - 時間の制約があるときにそこまでの余裕があるか
  - 綺麗に書けるし、バグは減らせそう
- 平衡二分探索木はまだちゃんと実装してみたことない
- strmikanさんの[Red Black Tree](https://atcoder.jp/contests/abc241/submissions/29838869)の実装も試したい

### 提出
- [semisagi写経](https://atcoder.jp/contests/abc241/submissions/29805948)
- [書き直し](https://atcoder.jp/contests/abc241/submissions/29821222)
