Submission #409314

# Submission time Handle Problem Language Result Execution time Memory
409314 2021-05-20T14:44:49 Z Blistering_Barnacles Bridges (APIO19_bridges) C++11
13 / 100
3000 ms 24536 KB
//apig's property
//Happiness can be found, even in the darkest of times, if one only remembers to turn on the light
//El Pueblo Unido Jamas Sera Vencido
//The saddest thing about betrayal? is that it never comes from your enemies
//Do or do not... there is no try
//Billions of bilious blue blistering barnacles in a thundering typhoon!
#include<bits/stdc++.h>
#define fast ios_base::sync_with_stdio(0) , cin.tie(0) , cout.tie(0)
#define F first
#define S second
#define pb push_back
#define vll vector< ll >
#define vi vector< int >
#define pll pair< ll , ll >
#define pi pair< int , int >
#define all(s) s.begin() , s.end()
#define sz(s) s.size()
#define str string
#define md ((s + e) / 2)
#define mid ((l + r) / 2)
#define msdp(dp) memset(dp , -1 , sizeof dp)
#define mscl(dp) memset(dp , 0 , sizeof dp)
#define C continue
#define R return
#define B break
#define lx node * 2
#define rx node * 2 + 1
#define br(o) o ; break
#define co(o) o ; continue
using namespace std;
typedef long long ll;
ll q, dp[105][100005], a[555555] , vis[555555], k, l, m, n, o, p;
map < ll , ll > mp;
vector < pair < pll , ll > > adj[555555];
const ll mod = 1e9+7;
str s;
pll pr[555555] ;
void dfs(ll v , ll par , ll w){
    vis[v] = 1 ;
    for(auto u : adj[v]){
        if(u.F.F == par || u.F.S < w || vis[u.F.F])C ;
        dfs(u.F.F , v , w) ;
    }
}
void solve(){
    cin >> n >> m ;
    for(ll i = 1 ; i <= m ; i++){
        cin >> o >> p >> k ;
        adj[o].pb( { { p , k } , i } ) ;
        adj[p].pb( { { o , k } , i } ) ;
        pr[i] = {o , p} ;
    }
    ll cnt = 0 ;
    cin >> l ;
    while(l--){
        cin >> k ;
        if(k == 2){
            cin >> o >> p ;
            for(ll i = 1 ; i <= n ; i++)vis[i] = 0 ;
            dfs(o , 0 , p) ;
            ll ans = 0 ;
            for(ll i =  1; i <= n; i++)ans += vis[i] ;
            cout << ans << endl ;

        }
        else {
            cin >> o >> p ;
            pll op = pr[o] ;
            for(ll i = 0 ; i < adj[op.F].size() ; i++){
                if(adj[op.F][i].S == o){
                    adj[op.F][i].F.S = p ;
                    B ;
                }
            }
            //for(auto u : adj[op.F]) cout << u.F.F << " " << u.F.S << " " << u.S << endl ;
            for(ll i = 0 ; i < sz(adj[op.S]) ; i++){
                if(adj[op.S][i].S == o){
                    adj[op.S][i].F.S = p ;
                    B ;
                }
            }
        }
    }
}
int main(){
    fast ;
    //cin >> q;
    q = 1;
    while(q--){
        solve();
    }
}

Compilation message

bridges.cpp: In function 'void solve()':
bridges.cpp:69:30: warning: comparison of integer expressions of different signedness: 'll' {aka 'long long int'} and 'std::vector<std::pair<std::pair<long long int, long long int>, long long int> >::size_type' {aka 'long unsigned int'} [-Wsign-compare]
   69 |             for(ll i = 0 ; i < adj[op.F].size() ; i++){
      |                            ~~^~~~~~~~~~~~~~~~~~
bridges.cpp:76:30: warning: comparison of integer expressions of different signedness: 'll' {aka 'long long int'} and 'std::vector<std::pair<std::pair<long long int, long long int>, long long int> >::size_type' {aka 'long unsigned int'} [-Wsign-compare]
   76 |             for(ll i = 0 ; i < sz(adj[op.S]) ; i++){
      |                              ^
bridges.cpp:53:8: warning: unused variable 'cnt' [-Wunused-variable]
   53 |     ll cnt = 0 ;
      |        ^~~
# Verdict Execution time Memory Grader output
1 Correct 8 ms 13260 KB Output is correct
2 Correct 8 ms 13260 KB Output is correct
3 Correct 73 ms 13488 KB Output is correct
4 Correct 27 ms 13384 KB Output is correct
5 Correct 24 ms 13524 KB Output is correct
6 Correct 23 ms 13396 KB Output is correct
7 Correct 22 ms 13388 KB Output is correct
8 Correct 23 ms 13388 KB Output is correct
9 Correct 23 ms 13392 KB Output is correct
10 Correct 20 ms 13388 KB Output is correct
11 Correct 21 ms 13384 KB Output is correct
12 Correct 21 ms 13272 KB Output is correct
13 Correct 25 ms 13372 KB Output is correct
14 Correct 22 ms 13400 KB Output is correct
15 Correct 24 ms 13400 KB Output is correct
16 Correct 22 ms 13392 KB Output is correct
17 Correct 22 ms 13388 KB Output is correct
# Verdict Execution time Memory Grader output
1 Execution timed out 3068 ms 20076 KB Time limit exceeded
2 Halted 0 ms 0 KB -
# Verdict Execution time Memory Grader output
1 Correct 2911 ms 16644 KB Output is correct
2 Correct 2758 ms 16048 KB Output is correct
3 Execution timed out 3050 ms 18136 KB Time limit exceeded
4 Halted 0 ms 0 KB -
# Verdict Execution time Memory Grader output
1 Execution timed out 3054 ms 24536 KB Time limit exceeded
2 Halted 0 ms 0 KB -
# Verdict Execution time Memory Grader output
1 Execution timed out 3068 ms 20076 KB Time limit exceeded
2 Halted 0 ms 0 KB -
# Verdict Execution time Memory Grader output
1 Correct 8 ms 13260 KB Output is correct
2 Correct 8 ms 13260 KB Output is correct
3 Correct 73 ms 13488 KB Output is correct
4 Correct 27 ms 13384 KB Output is correct
5 Correct 24 ms 13524 KB Output is correct
6 Correct 23 ms 13396 KB Output is correct
7 Correct 22 ms 13388 KB Output is correct
8 Correct 23 ms 13388 KB Output is correct
9 Correct 23 ms 13392 KB Output is correct
10 Correct 20 ms 13388 KB Output is correct
11 Correct 21 ms 13384 KB Output is correct
12 Correct 21 ms 13272 KB Output is correct
13 Correct 25 ms 13372 KB Output is correct
14 Correct 22 ms 13400 KB Output is correct
15 Correct 24 ms 13400 KB Output is correct
16 Correct 22 ms 13392 KB Output is correct
17 Correct 22 ms 13388 KB Output is correct
18 Execution timed out 3068 ms 20076 KB Time limit exceeded
19 Halted 0 ms 0 KB -