質問編集履歴
2
追記2(vectorの要素数について)を追加しました
test
CHANGED
File without changes
|
test
CHANGED
@@ -123,3 +123,17 @@
|
|
123
123
|
一応、普通の配列でもできないかどうか少し気になっているので質問は数日間残しておきます(回答がつかなければそのまま自己解決という形にさせていただきます)
|
124
124
|
|
125
125
|
配列を使った方法は、pについてクイックソートを使うときにその数字が元々何番目だったかなどの情報を保持しておけばいけるのではないかと考えたのですが、私の実装力では試せませんでした
|
126
|
+
|
127
|
+
|
128
|
+
|
129
|
+
追記2:何度もすみません
|
130
|
+
|
131
|
+
上述のプログラムについて、vector<ll>py[m];をvector<ll>py[100001];に変えたところ正解扱いになったのですが
|
132
|
+
|
133
|
+
vector<ll>py[m];のままだといくつかのテストケースで実行時エラーとなってしまいました
|
134
|
+
|
135
|
+
pyにpushしていくデータ数はmで間違いないと思うのですが、vector内ではどのようにデータの処理が行われているのでしょうか
|
136
|
+
|
137
|
+
色々試したところ[m+1]なら3つほど実行時エラー、[m*2]なら1つだけ実行時エラーが返ってきました
|
138
|
+
|
139
|
+
何度も申し訳ありませんが分かる方いらっしゃいましたらご助言お願いします
|
1
追記を追加しました
test
CHANGED
File without changes
|
test
CHANGED
@@ -99,3 +99,27 @@
|
|
99
99
|
|
100
100
|
|
101
101
|
どれか1つについてで良いので、もしよければ回答よろしくお願いします
|
102
|
+
|
103
|
+
|
104
|
+
|
105
|
+
追記:イテレータについて勘違いしていたようです
|
106
|
+
|
107
|
+
注意深く調べたところ
|
108
|
+
|
109
|
+
*lower_bound(py[p[i]].begin(),py[p[i]].end(),y[i]) なら中身の数値
|
110
|
+
|
111
|
+
lower_bound(py[p[i]].begin(),py[p[i]].end(),y[i]) なら数値の番地
|
112
|
+
|
113
|
+
lower_bound(py[p[i]].begin(),py[p[i]].end(),y[i])-py[p[i]].begin() なら「数値の番地-先頭の数値の番地」すなわち「数値が何番目か」
|
114
|
+
|
115
|
+
ということであると分かりました
|
116
|
+
|
117
|
+
出力に関してもキャストを外したところ無事実行でき、上記のそれぞれを自分で確認できました
|
118
|
+
|
119
|
+
要はこちらの不注意でした、申し訳ありません。また、ご指摘いただいた方は有難うございました
|
120
|
+
|
121
|
+
|
122
|
+
|
123
|
+
一応、普通の配列でもできないかどうか少し気になっているので質問は数日間残しておきます(回答がつかなければそのまま自己解決という形にさせていただきます)
|
124
|
+
|
125
|
+
配列を使った方法は、pについてクイックソートを使うときにその数字が元々何番目だったかなどの情報を保持しておけばいけるのではないかと考えたのですが、私の実装力では試せませんでした
|