Super Marco 2 (monete) compilazione fallita

Stavo cercando di risolvere questo problema con i grafi (ho iniziato da pochissimo a capire come funzionano) e se eseguo io il programma funziona , ma quando vado ad inviarlo mi da compilazione fallita , dicendo:
monete.c:2:10: fatal error: iostream: No such file or directory
2 | #include
| ^~~~~~~~~~
compilation terminated.

Non capisco il motivo di ciò, se invece tolgo questa libreria mi dice la stessa cosa per la libreria vector, come risolvo? Allego il codice non so se può servire

#include<stdio.h>
#include<iostream>
#include<vector>
#include<cstdlib>
#include<assert.h>
#define MAXN 10000
#define MAXM 100000

using namespace std;

vector<int> adj[MAXN];
bool visita[MAXN];
int monete[MAXN];
int r;
int A,B;

void sol(int s, int m){
	if(visita[s]) return;
	visita[s]=1;
	r+=m;
	for(int i=0;i<adj[s].size();i++){
		sol(adj[s][i], monete[adj[s][i]]);
	}
}

int main() {
    FILE *fr, *fw;
    int N, M, i;

    fr = fopen("input.txt", "r");
    fw = fopen("output.txt", "w");
    assert(2 == fscanf(fr, "%d%d", &N, &M));
    for(i=0; i<N; i++)
        assert(1 == fscanf(fr, "%d", &monete[i]));
    for(i=0; i<M; i++){
    	assert(2 == fscanf(fr, "%d%d", &A, &B));
    	adj[A].push_back(B);
    	adj[B].push_back(A);
	}
        
    sol(0,monete[0]);

    fprintf(fw, "%d\n", r);
    fclose(fr);
    fclose(fw);
    return 0;
}

Consiglio pratico: sostituisci tutti gli include con l’unica riga

#include <bits/stdc++.h>

E’ un header particolare che contiene tutte le librerie che importi regolarmente
E’ fortemente sconsigliato nella programmazione “lavorativa”, pero’ in competitiva va piu’ che bene

Ok grazie del consiglio però ora mi da questo
monete.c:1:10: fatal error: bits/stdc++.h: No such file or directory
1 | #include <bits/stdc++.h>
| ^~~~~~~~~~~~~~~
compilation terminated.

Ah ho risolto, stavo inviando la soluzione in C invece di C++