質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.48%
C++

C++はC言語をもとにしてつくられた最もよく使われるマルチパラダイムプログラミング言語の1つです。オブジェクト指向、ジェネリック、命令型など広く対応しており、多目的に使用されています。

Q&A

解決済

1回答

1192閲覧

[アイズオンラインジャッジ]C++で根付き木、%1/8でRuntimeErrorが出る

kataniku8177

総合スコア6

C++

C++はC言語をもとにしてつくられた最もよく使われるマルチパラダイムプログラミング言語の1つです。オブジェクト指向、ジェネリック、命令型など広く対応しており、多目的に使用されています。

0グッド

0クリップ

投稿2019/07/26 08:08

前提・実現したいこと

アイズオンラインジャッジで,
C++ で 根付き木 の問題を解いていたのですが, RuntimeErrorがでて正解しません.
http://judge.u-aizu.ac.jp/onlinejudge/description.jsp?id=ALDS1_7_A&lang=jp
コード自体はあっているような気がするんですが何がおかしいのかわかる方教えていただけると嬉しいです.

発生している問題・エラーメッセージ

Runtime Error
%は1/8です.

該当のソースコード

//下の/はコンパイルした時はつけてません
/#include <iostream>
/#include <stdio.h>
/#include <vector>
/#include <algorithm>

using namespace std;

typedef struct Node{
int node;
int parent;
int depth;
vector<int> v;
}Node;

int check_exist_node(int fnode, vector<Node> tmp_v){
Node tmp_node;
tmp_node.node = -1;
for(int i=0; tmp_v.size(); i++){
if(tmp_v[i].node == fnode)return i;
}
return tmp_node.node;
}

bool node_cmp(const Node &a, const Node &b){
return a.node<b.node;
}

int main(int argc, const char * argv[]) {
// insert code here...

///////// //write// ///////// int n; cin >> n; vector<Node> node_v; for(int itr = 0; itr<n; itr++){ int cin_node; cin >> cin_node; Node tmp_node; bool check_tmp_node_pushback = true; if(check_exist_node(cin_node, node_v) == -1){ tmp_node.node = cin_node; tmp_node.parent = -1; tmp_node.depth = 0; }else{ tmp_node = node_v[check_exist_node(cin_node, node_v)]; check_tmp_node_pushback = false; } int node_root; cin >> node_root; for(int i=0; i<node_root; i++){ Node tmp_node2; int tmp_root_val = 0; cin >> tmp_root_val; tmp_node2.node = tmp_root_val; tmp_node2.parent = tmp_node.node; tmp_node2.depth = tmp_node.depth+1; node_v.push_back(tmp_node2); tmp_node.v.push_back(tmp_root_val); } if(check_tmp_node_pushback) node_v.push_back(tmp_node); else node_v[check_exist_node(cin_node, node_v)] = tmp_node; } sort(node_v.begin(), node_v.end(), node_cmp); for(int i=0; i<n; i++){ cout << "node" << " "; cout << node_v[i].node; cout << ": parent = "; cout << node_v[i].parent; cout << ", depth = "; cout << node_v[i].depth; cout << ", "; if(node_v[i].depth == 0){ cout << "root"; }else if(node_v[i].v.empty()){ cout << "leaf"; }else{ cout << "internal node"; } cout << ", ["; if(!node_v[i].v.empty()) for(int j=0; j<node_v[i].v.size(); j++){ cout << node_v[i].v[j]; if(j!=node_v[i].v.size()-1) cout << ", "; } cout << "]"; cout << endl; } return 0;

}

試したこと

XcodeとwebのC++コンパイラを使って実行しました.
その際は成功したのですが...

補足情報(FW/ツールのバージョンなど)

特になし

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

y_waiwai

2019/07/26 08:11

エラーメッセージをコピペで提示してください
kataniku8177

2019/07/26 08:23

Compile Error Logs: ステータス Judge: 1/8 C++ CPU: 00:00 sec Memory: 3020 KB Length: 2487 B テストケースの判定結果 Case # Verdict CPU Time Memory In Out Case Name Case #1 : Accepted 00:00 3020 6 41 testcase_00 Case #2 : Runtime Error 00:00 0 24 168 testcase_01 Case #3 - - 42 311 testcase_02 Case #4 - - 85 591 testcase_03 Case #5 - - 69 506 testcase_04 Case #6 - - 189 1236 testcase_05 Case #7 - - 1377789 5077776 testcase_06 Case #8 - - 1387784 5436666 testcase_07 logには何も書かれていませんでしたが、エラーメッセージとはこれのことでしょうか。
guest

回答1

0

自己解決

普通に間違ってる気がするので、解答とか見てみて書き直します...

投稿2019/07/27 00:41

kataniku8177

総合スコア6

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.48%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問