結果
| 問題 | 
                            No.330 Eigenvalue Decomposition
                             | 
                    
| コンテスト | |
| ユーザー | 
                             | 
                    
| 提出日時 | 2021-09-22 19:36:49 | 
| 言語 | C++14  (gcc 13.3.0 + boost 1.87.0)  | 
                    
| 結果 | 
                             
                                AC
                                 
                             
                            
                         | 
                    
| 実行時間 | 197 ms / 5,000 ms | 
| コード長 | 1,318 bytes | 
| コンパイル時間 | 4,049 ms | 
| コンパイル使用メモリ | 231,388 KB | 
| 実行使用メモリ | 9,856 KB | 
| 最終ジャッジ日時 | 2024-07-05 09:19:45 | 
| 合計ジャッジ時間 | 7,303 ms | 
| 
                            ジャッジサーバーID (参考情報)  | 
                        judge1 / judge2 | 
(要ログイン)
| ファイルパターン | 結果 | 
|---|---|
| sample | AC * 5 | 
| other | AC * 31 | 
コンパイルメッセージ
main.cpp: In function 'void read(Args& ...)':
main.cpp:34:25: warning: fold-expressions only available with '-std=c++17' or '-std=gnu++17' [-Wc++17-extensions]
   34 |    ( std::cin >> ... >> args );
      |                         ^~~~
            
            ソースコード
#include <bits/stdc++.h>
#include <atcoder/all>
#define int long long
#define endl "\n"
#define all(n) n.begin(),n.end()
#define rall(n) n.rbegin(),n.rend()
#define rep(i, s, n) for (int i = s; i < (int)(n); i++)
#define floatset(n) fixed<<setprecision(n)
#define rangeout(x,y,h,w) (x<0||y<0||h-1<x||w-1<y)
using namespace std;
using namespace atcoder;
template<class T>using vec=vector<T>;
template<class T>using min_queue=priority_queue<T,vector<T>,greater<T>>;
using ll = long long;
using ld = long double;
using pll = pair<ll,ll>;
using Graph = vector<vector<int>>;
constexpr ll INF = 1e18;
constexpr ll mod = 1000000007;
constexpr ll MOD = 998244353;
constexpr int dx[4]={1,0,-1,0};
constexpr int dy[4]={0,1,0,-1};
template<typename T>
bool chmin(T&a,T b){return a>b?a=b,true:false;}
template<typename T>
bool chmax(T&a,T b){return a<b?a=b,true:false;}
bool Flag(int bit,int i){return (bit&(1LL<<i));}
template<typename A, size_t N, typename T>
void Fill(A (&array)[N], const T &val){
    fill( (T*)array, (T*)(array+N), val );
}
template <typename ...Args>
void read(Args &...args) {
   ( std::cin >> ... >> args );
}
signed main(){
    int N,M;
    read(N,M);
    dsu uf(N);
    for(int i=0;i<M;i++){
        int a,b,c;
        read(a,b,c);
        uf.merge(--a,--b);
    }
    cout<<uf.groups().size()<<endl;
}