OJの「ランタイムエラー」を解決するにはどうすればよいですか

Liam_1998

私はOJの古典的なTOPK問題を解決しようとしています:配列を与えられて、最大のK数を数え、それらを昇順で出力します。私の解決策は、MAX ROOT HEAPを構築し、K回削除することです。OJに配置すると、「ランタイムエラー」と表示され、正しい入力と出力が得られました。しかし、入力ファイルをダウンロードして、自分のPCでテストします。 、あたりです。それで、私のコードの問題は何ですか?「ランタイムエラー」を引き起こす不正な操作はありますか?

#include <iostream>
using namespace std;

long long N,K;
long long * maxHeap;
long long size = 0;

void insertItem(long long * maxHeap)
{
    long long item;
    cin >> item;
    long long pos = ++size;
    for  ( pos; maxHeap[pos / 2] <= item; pos /= 2 )    maxHeap[pos] = maxHeap[pos / 2];
    maxHeap[pos] = item;
}

long long deleteItem(long long * maxHeap)
{
    long long max_item = maxHeap[1];
    long long item = maxHeap[size--];
    long long parent = 1;
    long long child;
    for ( parent; parent * 2 <= size; parent = child ) {
        child = parent * 2;
        if ( child < size && maxHeap[child] < maxHeap[child + 1] )  child++;
        if ( item > maxHeap[child] )    break;
        else    maxHeap[parent] = maxHeap[child];
    }
    maxHeap[parent] = item; 
    return max_item;
}

int main()
{
//  freopen("F://input.txt","r",stdin);
    cin >> N;
    maxHeap = new long long[N];
    maxHeap[0] = 1000000000;
    for ( long long i = 0; i < N; i++ ) insertItem(maxHeap);
    cin >> K;
    for ( long long i = 0; i < K; i++ ) cout << deleteItem(maxHeap) << endl;
    delete[] maxHeap;
    return 0;
}

OJからの入力サンプルのダウンロード:19 11 2132 45445654 34 44 5645 68455 32 56 51 63 47453554655 761 10

出力:5645 2132 761 655 654 554 455 453 445 68

gsamaras

あなたのコードは間違っています。のあいまいな呼び出しsize(mysizeなどの別の呼び出し)を無視すると、コードのどこかで範囲を超えているように見えます。

あなたの例でNは19に等しいので、maxHeap配列には0から19-1 = 18までのインデックスを付ける必要があります。

ただし、ここでは、たとえば、19にアクセスします。

for  ( pos; maxHeap[pos / 2] <= item; pos /= 2 )
    maxHeap[pos] = maxHeap[pos / 2];

posあなたが私を信じていない場合は、ループの本文にの印刷ステートメントを追加してください。

この記事はインターネットから収集されたものであり、転載の際にはソースを示してください。

侵害の場合は、連絡してください[email protected]

編集
0

コメントを追加

0

関連記事

分類Dev

PyTorchのサイズの不一致によるランタイムエラーを解決するにはどうすればよいですか?

分類Dev

XAMLで「タイプの欠落」エラーを解決するにはどうすればよいですか?

分類Dev

このタイプのmysqlエラーを解決するにはどうすればよいですか?

分類Dev

このコンパイルエラーを解決するにはどうすればよいですか?

分類Dev

Android NDKのコンパイルエラーを解決するにはどうすればよいですか?

分類Dev

Jspプログラムのエラーを解決するにはどうすればよいですか?

分類Dev

Rustの可変参照のライフタイムエラーを解決するにはどうすればよいですか?

分類Dev

WebGL Unityゲームでこのエラーを解決するにはどうすればよいですか?

分類Dev

NPMインストールエラーを解決するにはどうすればよいですか?

分類Dev

ESLintでインポート/未解決のエラーを解決するにはどうすればよいですか?

分類Dev

PostgreSQLの「中止(コアダンプ)」エラーを解決するにはどうすればよいですか?

分類Dev

タイムゾーンとSSLの問題を解決するにはどうすればよいですか

分類Dev

VBA関数エラーのエラーを解決するにはどうすればよいですか?

分類Dev

Microsoft Bot Frameworkのコンテンツタイプエラーを解決するにはどうすればよいですか?

分類Dev

関数ポインタのこのエラーを解決するにはどうすればよいですか?

分類Dev

Pythonの「Pyzbar」ライブラリのインポートエラーを解決するにはどうすればよいですか?

分類Dev

リジッドタイプの変数バウンドエラーを解決するにはどうすればよいですか?

分類Dev

フォームを透明にするこのサイズ変更エラーを解決するにはどうすればよいですか?

分類Dev

Kotlinでクラスの膨張エラーを解決するにはどうすればよいですか?

分類Dev

bashの浮動値によるエラーを解決するにはどうすればよいですか?

分類Dev

Matlabのdrawcircleに関するエラーを解決するにはどうすればよいですか?

分類Dev

Dockerを使用して「ボリュームストアメタデータデータベースを開いているとき」のデーモンタイムアウトエラーを解決するにはどうすればよいですか?

分類Dev

beautifulsoupを使用する際の属性エラーを解決するにはどうすればよいですか?

分類Dev

コマンドラインでこの新しいエラーを解決するにはどうすればよいですか?

分類Dev

この「コンストラクターを解決できません」エラーを修正するにはどうすればよいですか?

分類Dev

virtualenvにPythonパッケージをインストールする際のエラーを解決するにはどうすればよいですか?

分類Dev

依存関係解決の一部としてランタイムパラメータを渡すにはどうすればよいですか?

分類Dev

依存関係解決の一部としてランタイムパラメータを渡すにはどうすればよいですか?

分類Dev

依存関係解決の一部としてランタイムパラメータを渡すにはどうすればよいですか?

Related 関連記事

  1. 1

    PyTorchのサイズの不一致によるランタイムエラーを解決するにはどうすればよいですか?

  2. 2

    XAMLで「タイプの欠落」エラーを解決するにはどうすればよいですか?

  3. 3

    このタイプのmysqlエラーを解決するにはどうすればよいですか?

  4. 4

    このコンパイルエラーを解決するにはどうすればよいですか?

  5. 5

    Android NDKのコンパイルエラーを解決するにはどうすればよいですか?

  6. 6

    Jspプログラムのエラーを解決するにはどうすればよいですか?

  7. 7

    Rustの可変参照のライフタイムエラーを解決するにはどうすればよいですか?

  8. 8

    WebGL Unityゲームでこのエラーを解決するにはどうすればよいですか?

  9. 9

    NPMインストールエラーを解決するにはどうすればよいですか?

  10. 10

    ESLintでインポート/未解決のエラーを解決するにはどうすればよいですか?

  11. 11

    PostgreSQLの「中止(コアダンプ)」エラーを解決するにはどうすればよいですか?

  12. 12

    タイムゾーンとSSLの問題を解決するにはどうすればよいですか

  13. 13

    VBA関数エラーのエラーを解決するにはどうすればよいですか?

  14. 14

    Microsoft Bot Frameworkのコンテンツタイプエラーを解決するにはどうすればよいですか?

  15. 15

    関数ポインタのこのエラーを解決するにはどうすればよいですか?

  16. 16

    Pythonの「Pyzbar」ライブラリのインポートエラーを解決するにはどうすればよいですか?

  17. 17

    リジッドタイプの変数バウンドエラーを解決するにはどうすればよいですか?

  18. 18

    フォームを透明にするこのサイズ変更エラーを解決するにはどうすればよいですか?

  19. 19

    Kotlinでクラスの膨張エラーを解決するにはどうすればよいですか?

  20. 20

    bashの浮動値によるエラーを解決するにはどうすればよいですか?

  21. 21

    Matlabのdrawcircleに関するエラーを解決するにはどうすればよいですか?

  22. 22

    Dockerを使用して「ボリュームストアメタデータデータベースを開いているとき」のデーモンタイムアウトエラーを解決するにはどうすればよいですか?

  23. 23

    beautifulsoupを使用する際の属性エラーを解決するにはどうすればよいですか?

  24. 24

    コマンドラインでこの新しいエラーを解決するにはどうすればよいですか?

  25. 25

    この「コンストラクターを解決できません」エラーを修正するにはどうすればよいですか?

  26. 26

    virtualenvにPythonパッケージをインストールする際のエラーを解決するにはどうすればよいですか?

  27. 27

    依存関係解決の一部としてランタイムパラメータを渡すにはどうすればよいですか?

  28. 28

    依存関係解決の一部としてランタイムパラメータを渡すにはどうすればよいですか?

  29. 29

    依存関係解決の一部としてランタイムパラメータを渡すにはどうすればよいですか?

ホットタグ

アーカイブ