プログラミングの宿題として、Prim のアルゴリズムを実装しています。テスト ケースの入力ファイルの形式は次のとおりです。
入力の最初の行は、テスト ケースの数を示す整数 C になります。各テスト ケースの最初の行には、2 つの整数 N と E が含まれます。ここで、N はグラフ内のノードの数を表し、E はエッジの数をそれぞれ表します。次に、それぞれ 3 つの整数 I、J、P を持つ E 行が続きます。ここで、I と J はエッジのノードを表します (無向グラフ、0 ≤ I、J
私はコードを始めていますが (プログラミングは初めてです)、コードがテストケースのエントリしか読み取らない理由がわかりません。何が間違っていますか?
これは、ファイル entradaA.in を読み取るコードです。
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
int main (int argc, char *argv []){
int testCases;
int numberNodes;
int numberEdges;
freopen("entradaA.in", "r", stdin);
int i, j, cont=1;
int total = 0;
int a, b, c;
scanf ("%d", &testCases);
for (i=0; i<testCases; ++i)
{
scanf ("%d %d", &numberNodes, &numberEdges); //Number Nodes & Edges
for (i=0; i<numberEdges; i++)
{
scanf ("%d %d %d", &a,&b,&c);//
printf ("%d %d %d\n", a, b, c);
}
printf ("Caso %d: Total Weight %d\n", cont++, total);
}
return (0);
}
入力ファイル (entradaA.in) は次のようになります。
2
7 11
0 1 17
0 2 10
0 6 14
1 2 6
1 3 1
2 3 4
2 6 3
3 4 7
4 6 10
4 5 2
5 6 9
6 9
0 1 30
0 2 30
1 3 22
1 5 33
2 3 20
2 4 33
3 4 15
3 5 20
5 4 20