Enviar pesquisa
Carregar
Pyramid
•
0 gostou
•
1,206 visualizações
T
tomerun
Seguir
Denunciar
Compartilhar
Denunciar
Compartilhar
1 de 13
Baixar agora
Baixar para ler offline
Recomendados
Za atsu-20170328
Za atsu-20170328
HCPC: 北海道大学競技プログラミングサークル
Disco Presents ディスカバリーチャンネルプログラミングコンテスト2016 本選 解説
Disco Presents ディスカバリーチャンネルプログラミングコンテスト2016 本選 解説
AtCoder Inc.
Gcd
Gcd
oupc
CODE FESTIVAL 2015 予選B 解説
CODE FESTIVAL 2015 予選B 解説
AtCoder Inc.
K2PC Div1 E 暗号化
K2PC Div1 E 暗号化
Kazuma Mikami
AtCoder Regular Contest 045 解説
AtCoder Regular Contest 045 解説
AtCoder Inc.
情報オリンピック夏合宿発表
情報オリンピック夏合宿発表
Kazuma Mikami
AtCoder Beginner Contest 014 解説
AtCoder Beginner Contest 014 解説
AtCoder Inc.
Recomendados
Za atsu-20170328
Za atsu-20170328
HCPC: 北海道大学競技プログラミングサークル
Disco Presents ディスカバリーチャンネルプログラミングコンテスト2016 本選 解説
Disco Presents ディスカバリーチャンネルプログラミングコンテスト2016 本選 解説
AtCoder Inc.
Gcd
Gcd
oupc
CODE FESTIVAL 2015 予選B 解説
CODE FESTIVAL 2015 予選B 解説
AtCoder Inc.
K2PC Div1 E 暗号化
K2PC Div1 E 暗号化
Kazuma Mikami
AtCoder Regular Contest 045 解説
AtCoder Regular Contest 045 解説
AtCoder Inc.
情報オリンピック夏合宿発表
情報オリンピック夏合宿発表
Kazuma Mikami
AtCoder Beginner Contest 014 解説
AtCoder Beginner Contest 014 解説
AtCoder Inc.
Aizu-2017: B
Aizu-2017: B
HCPC: 北海道大学競技プログラミングサークル
AtCoder Beginner Contest 035 解説
AtCoder Beginner Contest 035 解説
AtCoder Inc.
Binary indexed tree
Binary indexed tree
HCPC: 北海道大学競技プログラミングサークル
AtCoder Beginner Contest 017 解説
AtCoder Beginner Contest 017 解説
AtCoder Inc.
abc027
abc027
AtCoder Inc.
RUPC2014_Day2_C
RUPC2014_Day2_C
s1190048
Cube
Cube
oupc
DDPC 2016 予選 解説
DDPC 2016 予選 解説
AtCoder Inc.
AtCoder Beginner Contest 018 解説
AtCoder Beginner Contest 018 解説
AtCoder Inc.
AtCoder Regular Contest 019 解説
AtCoder Regular Contest 019 解説
AtCoder Inc.
UTPC2012 - K
UTPC2012 - K
omeometo
ACPC 2018 Day3 F: 01 文字列と窓 (Binary String with Slit)
ACPC 2018 Day3 F: 01 文字列と窓 (Binary String with Slit)
HCPC: 北海道大学競技プログラミングサークル
AtCoder Regular Contest 030 解説
AtCoder Regular Contest 030 解説
AtCoder Inc.
球面フィッティングの導出と実装
球面フィッティングの導出と実装
j_rocket_boy
Sclalaz Kleisli の使い方
Sclalaz Kleisli の使い方
Masaru Watanabe
行列補完を用いた無線マルチキャスト符号構成アルゴリズム
行列補完を用いた無線マルチキャスト符号構成アルゴリズム
Tasuku Soma
AtCoder Beginner Contest 023 解説
AtCoder Beginner Contest 023 解説
AtCoder Inc.
AtCoder Regular Contest 043 解説
AtCoder Regular Contest 043 解説
AtCoder Inc.
abc031
abc031
AtCoder Inc.
ggplot2 110129
ggplot2 110129
Takashi Minoda
量子アニーリングマシンのプログラミング
量子アニーリングマシンのプログラミング
nishio
Cv 14th
Cv 14th
Junichi Ido
Mais conteúdo relacionado
Mais procurados
Aizu-2017: B
Aizu-2017: B
HCPC: 北海道大学競技プログラミングサークル
AtCoder Beginner Contest 035 解説
AtCoder Beginner Contest 035 解説
AtCoder Inc.
Binary indexed tree
Binary indexed tree
HCPC: 北海道大学競技プログラミングサークル
AtCoder Beginner Contest 017 解説
AtCoder Beginner Contest 017 解説
AtCoder Inc.
abc027
abc027
AtCoder Inc.
RUPC2014_Day2_C
RUPC2014_Day2_C
s1190048
Cube
Cube
oupc
DDPC 2016 予選 解説
DDPC 2016 予選 解説
AtCoder Inc.
AtCoder Beginner Contest 018 解説
AtCoder Beginner Contest 018 解説
AtCoder Inc.
AtCoder Regular Contest 019 解説
AtCoder Regular Contest 019 解説
AtCoder Inc.
UTPC2012 - K
UTPC2012 - K
omeometo
ACPC 2018 Day3 F: 01 文字列と窓 (Binary String with Slit)
ACPC 2018 Day3 F: 01 文字列と窓 (Binary String with Slit)
HCPC: 北海道大学競技プログラミングサークル
AtCoder Regular Contest 030 解説
AtCoder Regular Contest 030 解説
AtCoder Inc.
球面フィッティングの導出と実装
球面フィッティングの導出と実装
j_rocket_boy
Sclalaz Kleisli の使い方
Sclalaz Kleisli の使い方
Masaru Watanabe
行列補完を用いた無線マルチキャスト符号構成アルゴリズム
行列補完を用いた無線マルチキャスト符号構成アルゴリズム
Tasuku Soma
AtCoder Beginner Contest 023 解説
AtCoder Beginner Contest 023 解説
AtCoder Inc.
AtCoder Regular Contest 043 解説
AtCoder Regular Contest 043 解説
AtCoder Inc.
abc031
abc031
AtCoder Inc.
ggplot2 110129
ggplot2 110129
Takashi Minoda
Mais procurados
(20)
Aizu-2017: B
Aizu-2017: B
AtCoder Beginner Contest 035 解説
AtCoder Beginner Contest 035 解説
Binary indexed tree
Binary indexed tree
AtCoder Beginner Contest 017 解説
AtCoder Beginner Contest 017 解説
abc027
abc027
RUPC2014_Day2_C
RUPC2014_Day2_C
Cube
Cube
DDPC 2016 予選 解説
DDPC 2016 予選 解説
AtCoder Beginner Contest 018 解説
AtCoder Beginner Contest 018 解説
AtCoder Regular Contest 019 解説
AtCoder Regular Contest 019 解説
UTPC2012 - K
UTPC2012 - K
ACPC 2018 Day3 F: 01 文字列と窓 (Binary String with Slit)
ACPC 2018 Day3 F: 01 文字列と窓 (Binary String with Slit)
AtCoder Regular Contest 030 解説
AtCoder Regular Contest 030 解説
球面フィッティングの導出と実装
球面フィッティングの導出と実装
Sclalaz Kleisli の使い方
Sclalaz Kleisli の使い方
行列補完を用いた無線マルチキャスト符号構成アルゴリズム
行列補完を用いた無線マルチキャスト符号構成アルゴリズム
AtCoder Beginner Contest 023 解説
AtCoder Beginner Contest 023 解説
AtCoder Regular Contest 043 解説
AtCoder Regular Contest 043 解説
abc031
abc031
ggplot2 110129
ggplot2 110129
Semelhante a Pyramid
量子アニーリングマシンのプログラミング
量子アニーリングマシンのプログラミング
nishio
Cv 14th
Cv 14th
Junichi Ido
凸最適化 〜 双対定理とソルバーCVXPYの紹介 〜
凸最適化 〜 双対定理とソルバーCVXPYの紹介 〜
Tomoki Yoshida
CVIM#11 3. 最小化のための数値計算
CVIM#11 3. 最小化のための数値計算
sleepy_yoshi
文書比較 (diff)
文書比較 (diff)
Satoshi MATSUURA
University CodeSprint 4 - Magic value
University CodeSprint 4 - Magic value
satanic
自然言語処理のための機械学習入門1章
自然言語処理のための機械学習入門1章
Hiroki Mizukami
CMSI計算科学技術特論A (2015) 第10回 行列計算における高速アルゴリズム1
CMSI計算科学技術特論A (2015) 第10回 行列計算における高速アルゴリズム1
Computational Materials Science Initiative
Convex Hull Trick
Convex Hull Trick
HCPC: 北海道大学競技プログラミングサークル
Rのoptim関数でロバスト回帰(LMSとLAV)
Rのoptim関数でロバスト回帰(LMSとLAV)
wada, kazumi
Sanpo
Sanpo
oupc
第15回 配信講義 計算科学技術特論B(2022)
第15回 配信講義 計算科学技術特論B(2022)
RCCSRENKEI
Indeedなう B日程 解説
Indeedなう B日程 解説
AtCoder Inc.
PRML復々習レーン#3 3.1.3-3.1.5
PRML復々習レーン#3 3.1.3-3.1.5
sleepy_yoshi
WUPC2nd G問題
WUPC2nd G問題
Dai Hamada
L0TV: a new method for image restoration in the presence of impulse noise
L0TV: a new method for image restoration in the presence of impulse noise
Fujimoto Keisuke
多倍長整数の乗算と高速フーリエ変換
多倍長整数の乗算と高速フーリエ変換
京大 マイコンクラブ
Semelhante a Pyramid
(17)
量子アニーリングマシンのプログラミング
量子アニーリングマシンのプログラミング
Cv 14th
Cv 14th
凸最適化 〜 双対定理とソルバーCVXPYの紹介 〜
凸最適化 〜 双対定理とソルバーCVXPYの紹介 〜
CVIM#11 3. 最小化のための数値計算
CVIM#11 3. 最小化のための数値計算
文書比較 (diff)
文書比較 (diff)
University CodeSprint 4 - Magic value
University CodeSprint 4 - Magic value
自然言語処理のための機械学習入門1章
自然言語処理のための機械学習入門1章
CMSI計算科学技術特論A (2015) 第10回 行列計算における高速アルゴリズム1
CMSI計算科学技術特論A (2015) 第10回 行列計算における高速アルゴリズム1
Convex Hull Trick
Convex Hull Trick
Rのoptim関数でロバスト回帰(LMSとLAV)
Rのoptim関数でロバスト回帰(LMSとLAV)
Sanpo
Sanpo
第15回 配信講義 計算科学技術特論B(2022)
第15回 配信講義 計算科学技術特論B(2022)
Indeedなう B日程 解説
Indeedなう B日程 解説
PRML復々習レーン#3 3.1.3-3.1.5
PRML復々習レーン#3 3.1.3-3.1.5
WUPC2nd G問題
WUPC2nd G問題
L0TV: a new method for image restoration in the presence of impulse noise
L0TV: a new method for image restoration in the presence of impulse noise
多倍長整数の乗算と高速フーリエ変換
多倍長整数の乗算と高速フーリエ変換
Mais de tomerun
Mastermind
Mastermind
tomerun
Ninja of Train
Ninja of Train
tomerun
U・N・C・O
U・N・C・O
tomerun
Bitmap
Bitmap
tomerun
Vinculum
Vinculum
tomerun
Together
Together
tomerun
Cheat
Cheat
tomerun
Cards
Cards
tomerun
Match
Match
tomerun
Contest
Contest
tomerun
Mais de tomerun
(10)
Mastermind
Mastermind
Ninja of Train
Ninja of Train
U・N・C・O
U・N・C・O
Bitmap
Bitmap
Vinculum
Vinculum
Together
Together
Cheat
Cheat
Cards
Cards
Match
Match
Contest
Contest
Pyramid
1.
Pyramid
原案: komiya
2.
問題概要
N*M(N, M≦1000) の行列 X があり、初期状態では 全ての要素が 0 。 以下のクエリが Q(≦10^6) 個あるので、全て処理し た後の行列を求めよ。 X[i, j] += max( 0, d - (| i – a | + | j – b |) ) 1 ≦ d ≦ max(N, M), 1≦a≦N, 1≦b≦M
3.
解法
一部でいもす法と呼ばれているアイデアを使う。 JOI 界隈では頻出?
4.
いもす法って?
区間への加算を、定数箇所の更新だけで済ませる。 加算された値を具体的に知りたくなったら累積和 をとる。 愚直 いもす法 更新 ( 加算 ) O(n) O(1) O(H*W) 参照 O(1) O(n) (a[i]=?) O(H*W) 本問題のように、更新が多く参照が少ない状況に 適している。
5.
いもす法って?
結局何をやっているのか? 累積和の逆変換 ( 階差数列 ) を利用している。 +1 +1 +1 +1 +1 O(n) 箇所の更新が必要 階差数列 累積和 どっち向きの変換も 計算量 O(n) +1 -1 定数箇所の更新で済む 処理が軽いので、加算クエリが多 いときはこっちの世界で処理する 方が効率良い
6.
いもす法って?
さっきの話は 2 次元以上にも拡張できる! 2 1 -1 2 3 2 累積和 0 3 2 2 6 7 -2 1 -1 逆変換 0 5 5 変換に必要な計算量は O(H*W)
7.
範囲和の処理
例えば次のようなクエリを処理することを考えよう。 +1 +1 +2 +1 +1 +2 +3 +2 +1 +1 +2 +1 +1
8.
範囲和の処理
累積和の逆変換を行うと次のような区間和になる。 +1 -1 +1 -1 +1 -1 -1 +1 -1 +1 -1 +1
9.
範囲和の処理
今度は斜め方向に累積和の逆変換をとる。 +1 -1 +1 -1
10.
範囲和の処理
こっち方向でも逆変換。 -1 -1 +1 +1
11.
細かいところ:端の処理
ピラミッド型範囲和が端で途切れると処理が面倒 なので、行列を拡大して考えると楽。 実際の行列 の範囲
12.
解法まとめ
端で途切れるのを防ぐため、行列を拡大する。 Q 個のクエリを処理する。右下方向と左下方向に 分けてそれぞれ定数箇所に値を加える。 右下方向と左下方向で累積和をとる。 右下方向と左下方向の累積和を重ね合わせる。 重ね合わせたものの 2 次元累積和をとる。
13.
おまけ
同様の手法で次のような加算クエリも処理できる。 +1 +1 +1 +1 +1 +1 +2 +2 +2 +1 +1 +2 +3 +2 +1 +1 +2 +2 +2 +1 +1 +1 +1 +1 +1 Let's 逆変換 !
Baixar agora