Submission #1174633

#TimeUsernameProblemLanguageResultExecution timeMemory
1174633mahmudow_mahmytBridges (APIO19_bridges)C++20
13 / 100
29 ms652 KiB
#include<bits/stdc++.h>
#define ll long long
#define ff first
#define ss second
#define mxn 1002
#define pb push_back
#define yes cout<<"YES"<<endl
#define no cout<<"NO"<<endl
using namespace std;
int n,m,q,u[mxn],v[mxn],d[mxn],s,w,b,r,ans,type;
vector<pair<int,int>> adj[mxn];
int ind[mxn][2],len[mxn][2];
bool vis[mxn];
void dfs(int node){
	vis[node]=true;
	ans++;
	for(pair<int,int> i:adj[node]){
		if(!vis[i.ff] and w<=i.ss){
			dfs(i.ff);
		}
	}
}
int main(){
	ios::sync_with_stdio(0);
	cin.tie(0);
	cout.tie(0);
//	freopen("input.txt","r",stdin);
// 	freopen("output.txt","w",stdout);
	cin>>n>>m;
	for(int i=1;i<=m;i++){
		cin>>u[i]>>v[i]>>d[i];
		adj[u[i]].pb({v[i],d[i]});
		adj[v[i]].pb({u[i],d[i]});
		ind[i][0]=u[i];
		ind[i][1]=v[i];
		len[i][0]=adj[u[i]].size()-1;
		len[i][1]=adj[v[i]].size()-1;
	}
	cin>>q;
	while(q--){
		cin>>type;
		if(type==1){
			cin>>b>>r;
			adj[ind[b][0]][len[b][0]].ss=r;
			adj[ind[b][1]][len[b][1]].ss=r;
		}else{
			cin>>s>>w;
			ans=0;
			for(int i=1;i<=n;i++) vis[i]=false;
			dfs(s);
			cout<<ans<<endl;
		}
	}
}
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...