10638 2024. 04. 07 15:10:22 111 Varázserdő cpp17 Hibás válasz 0/100 577ms 99384 KiB
#include<bits/stdc++.h>
using namespace std;

#define int long long

#define MOD 1000000007

signed main(){
	ios::sync_with_stdio(false);
	cin.tie(nullptr);
	int N,M;
	cin>>N>>M;
	vector<tuple<int,int,int>>e(M);
	for(int i=0;i<M;i++){
		int a,b,c;
		cin>>a>>b>>c;
		e[i]={c,a,b};
	}
	sort(e.begin(),e.end());
	int ans=0;
	vector<int>v(N+1),w(N+1),s;
	for(int i=0;i<M;i++){
		auto[c,a,b]=e[i];
		s.push_back(a);
		s.push_back(b);
		w[a]+=v[b]+1;
		w[a]%=MOD;
		w[b]+=v[a]+1;
		w[b]%=MOD;
		int cc=i+1==M?c+2:get<0>(e[i+1]);
		if(c!=cc){
			for(int i:s){
				if(w[i]==0){
					continue;
				}
				if(c+1==cc){
					v[i]=w[i];
				}
				else{
					v[i]=0;
				}
				ans+=w[i];
				ans%=MOD;
				w[i]=0;
			}
			s.clear();
		}
	}
	ans+=MOD-M;
	ans%=MOD;
	cout<<ans<<'\n';
	return 0;
}
Részfeladat Összpont Teszt Verdikt Idő Memória
subtask1 0/0
1 Elfogadva 3ms 1824 KiB
2 Elfogadva 3ms 2056 KiB
3 Hibás válasz 3ms 2272 KiB
subtask2 0/7
4 Hibás válasz 3ms 2460 KiB
5 Hibás válasz 3ms 2856 KiB
6 Hibás válasz 7ms 3852 KiB
7 Hibás válasz 7ms 3828 KiB
8 Hibás válasz 270ms 41792 KiB
9 Hibás válasz 270ms 41964 KiB
10 Hibás válasz 264ms 41964 KiB
11 Hibás válasz 257ms 41860 KiB
12 Hibás válasz 259ms 41860 KiB
13 Hibás válasz 252ms 41856 KiB
subtask3 0/9
14 Hibás válasz 3ms 3112 KiB
15 Hibás válasz 3ms 3132 KiB
16 Hibás válasz 52ms 12876 KiB
17 Hibás válasz 261ms 37808 KiB
18 Hibás válasz 572ms 82128 KiB
19 Hibás válasz 537ms 82300 KiB
20 Hibás válasz 532ms 82428 KiB
subtask4 0/14
21 Hibás válasz 3ms 3256 KiB
22 Hibás válasz 3ms 3388 KiB
23 Hibás válasz 3ms 3492 KiB
24 Hibás válasz 2ms 3492 KiB
subtask5 0/20
25 Hibás válasz 3ms 3520 KiB
26 Hibás válasz 4ms 3744 KiB
27 Hibás válasz 4ms 3768 KiB
28 Hibás válasz 4ms 3948 KiB
29 Hibás válasz 4ms 3800 KiB
30 Hibás válasz 4ms 3812 KiB
31 Hibás válasz 4ms 3892 KiB
32 Hibás válasz 4ms 3816 KiB
subtask6 0/50
33 Hibás válasz 7ms 4160 KiB
34 Hibás válasz 52ms 11452 KiB
35 Elfogadva 507ms 54860 KiB
36 Elfogadva 513ms 52620 KiB
37 Hibás válasz 556ms 68272 KiB
38 Hibás válasz 537ms 67472 KiB
39 Hibás válasz 577ms 83160 KiB
40 Hibás válasz 565ms 99384 KiB
41 Hibás válasz 529ms 62400 KiB