-
masashinakata
- 3446
- 1
- 0
- 0
![](https://s.togetter.com/static/web/img/placeholder.gif)
なんかごちゃごちゃすれば計算できるような気がした。 C: 入力を適当にプロセスサイズでブロックに分割して、(=1, )=-1としてprefixsumとったときの最小値と、総和を計算しておく。これを集めてもらえば、どこのブロックで)が過剰になるか分かるので、そこが分かったらそこを
2016-06-13 02:09:56![](https://s.togetter.com/static/web/img/placeholder.gif)
もう一度Rank0のプロセスが調べる。 D: 簡単なDPだけど、分割の仕方がめっちゃしんどかった。とりあえず横幅を300で分割して、さらに各ノードはその左右300個を持っておく。y方向に舐めるときに、前回の計算したところの両端を覗いた部分を計算していくと、300ターンぐらいは
2016-06-13 02:11:17![](https://s.togetter.com/static/web/img/placeholder.gif)
ローカルで計算できるんで、300ライン毎に左右から情報もらって、なんかやる。W方向に単純にプロセスで割ると、幅が1とかになると頻繁に同期が必要になって死ぬので、幅300固定かつプロセス数におうじて幅を減らすようなので最悪でも通信料が爆発しないように細心の注意が必要で、かなり心配
2016-06-13 02:12:27