提出 #17631821
ソースコード 拡げる
#include<bits/stdc++.h>
using namespace std;
// #include <ext/pb_ds/assoc_container.hpp>
// #include <ext/pb_ds/detail/standard_policies.hpp>
// using namespace __gnu_pbds;
#pragma GCC optimize("O3")
#ifdef LOCAL
#include "/Users/lbjlc/Desktop/coding/debug_utils.h"
#else
#define print(...) ;
#define printn(...) ;
#define printg(...) ;
#define fprint(...) ;
#define fprintn(...) ;
#endif
#define rep(i, a, b) for(auto i = (a); i < (b); i++)
#define rrep(i, a, b) for(auto i = (a); i > (b); i--)
#define all(v) (v).begin(), (v).end()
#define pb push_back
// #define mp make_pair
#define fi first
#define se second
#define maxi(x, y) x = max(x, y)
#define mini(x, y) x = min(x, y)
// long long fact(long long n) { if(!n) return 1; return n*fact(n-1); }
// #define endl '\n'
mt19937 rng(chrono::steady_clock::now().time_since_epoch().count());
int get_random() {
static uniform_int_distribution<int> dist(0, 1e9 + 6);
return dist(rng);
}
#define solve_testcase int T;cin>>T;for(int t=1;t<=T;t++){solve(t);}
typedef unsigned long long ull;
typedef long long ll;
typedef pair<int, int> pii;
typedef pair<ll, ll> pll;
typedef pair<double, double> pdd;
typedef vector<int> vi;
typedef vector<vi> vvi;
typedef vector<vvi> vvvi;
typedef vector<pii> vpii;
typedef vector<pll> vpll;
typedef vector<pdd> vpdd;
typedef vector<long long> vll;
#define bd(type,op,val) bind(op<type>(), std::placeholders::_1, val)
template<class T>
void make_unique(T & v) {
sort(v.begin(), v.end()); v.erase(unique(v.begin(), v.end()), v.end());
}
int geti() { int x; cin >> x; return x; }
long long getll() { long long x; cin >> x; return x; }
double getd() { double x; cin >> x; return x; }
// pair<int, int> a(geti(), geti()) does not work
// pair<int, int> a({geti(), geti()}) works, since it uses initializer.
const int MAXN = 3e5 + 100;
void solve(int tt) {
// cout<<"Case #"<<tt<<": ";
}
int a[MAXN],b[MAXN];
vi graph[MAXN];
ll sa,sb;
int vis[MAXN]={};
void dfs(int i,int p) {
vis[i]=1;
sa+=a[i];
sb+=b[i];
for(auto j:graph[i]) {
if(j!=p&&!vis[j]) dfs(j,i);
}
}
int main(int argc, char * argv[]) {
ios::sync_with_stdio(false);
cin.tie(nullptr);
cout.tie(nullptr);
// solve_testcase;
int n,m;
cin>>n>>m;
rep(i,0,n) cin>>a[i];
rep(i,0,n) cin>>b[i];
int u,v;
rep(i,0,m) {
cin>>u>>v;
u--;v--;
graph[u].pb(v);
graph[v].pb(u);
}
int ok=1;
rep(i,0,n) {
if(!vis[i]) {
sa=sb=0;
dfs(i,-1);
if(sa!=sb) ok=0;
// print(sa,sb);
}
}
cout<<(ok?"Yes":"No")<<endl;
return 0;
}
提出情報
| 提出日時 |
|
| 問題 |
B - Values |
| ユーザ |
lbjlc |
| 言語 |
C++ (GCC 9.2.1) |
| 得点 |
400 |
| コード長 |
2735 Byte |
| 結果 |
AC |
| 実行時間 |
116 ms |
| メモリ |
20228 KiB |
コンパイルエラー
./Main.cpp: In function ‘void solve(int)’:
./Main.cpp:65:16: warning: unused parameter ‘tt’ [-Wunused-parameter]
65 | void solve(int tt) {
| ~~~~^~
./Main.cpp: In function ‘int main(int, char**)’:
./Main.cpp:83:14: warning: unused parameter ‘argc’ [-Wunused-parameter]
83 | int main(int argc, char * argv[]) {
| ~~~~^~~~
./Main.cpp:83:27: warning: unused parameter ‘argv’ [-Wunused-parameter]
83 | int main(int argc, char * argv[]) {
| ~~~~~~~^~~~~~
ジャッジ結果
| セット名 |
Sample |
All |
| 得点 / 配点 |
0 / 0 |
400 / 400 |
| 結果 |
|
|
| セット名 |
テストケース |
| Sample |
00_sample_00, 00_sample_01, 00_sample_02, 00_sample_03 |
| All |
00_sample_00, 00_sample_01, 00_sample_02, 00_sample_03, 01_small_0, 01_small_1, 01_small_2, 01_small_3, 01_small_4, 01_small_5, 01_small_6, 01_small_7, 01_small_8, 01_small_9, 02_large_0, 02_large_1, 02_largecon_0, 02_largecon_1, 02_largecon_2, 02_largecon_3, 02_largecon_4, 02_largecon_5, 02_toolarge_0, 02_toolarge_1, 02_toolarge_2, 02_toolarge_3, 03_few_e_0, 03_few_e_1, 03_few_e_2, 03_few_e_3, 03_few_e_4, 03_few_e_5, 03_is_tree_0, 03_is_tree_1, 03_is_tree_2, 03_is_tree_3, 04_kill_overflow_0, 04_kill_overflow_1, 04_kill_overflow_2, 04_kill_overflow_3, 04_sumequal_0, 04_sumequal_1, 04_sumequal_2, 04_sumequal_3 |
| ケース名 |
結果 |
実行時間 |
メモリ |
| 00_sample_00 |
AC |
11 ms |
10572 KiB |
| 00_sample_01 |
AC |
9 ms |
10620 KiB |
| 00_sample_02 |
AC |
15 ms |
10652 KiB |
| 00_sample_03 |
AC |
9 ms |
10568 KiB |
| 01_small_0 |
AC |
14 ms |
10528 KiB |
| 01_small_1 |
AC |
9 ms |
10608 KiB |
| 01_small_2 |
AC |
10 ms |
10644 KiB |
| 01_small_3 |
AC |
17 ms |
10572 KiB |
| 01_small_4 |
AC |
12 ms |
10680 KiB |
| 01_small_5 |
AC |
9 ms |
10648 KiB |
| 01_small_6 |
AC |
10 ms |
10524 KiB |
| 01_small_7 |
AC |
10 ms |
10576 KiB |
| 01_small_8 |
AC |
11 ms |
10520 KiB |
| 01_small_9 |
AC |
8 ms |
10608 KiB |
| 02_large_0 |
AC |
72 ms |
15024 KiB |
| 02_large_1 |
AC |
41 ms |
13400 KiB |
| 02_largecon_0 |
AC |
99 ms |
20080 KiB |
| 02_largecon_1 |
AC |
98 ms |
18740 KiB |
| 02_largecon_2 |
AC |
106 ms |
20228 KiB |
| 02_largecon_3 |
AC |
74 ms |
17156 KiB |
| 02_largecon_4 |
AC |
109 ms |
18884 KiB |
| 02_largecon_5 |
AC |
102 ms |
19884 KiB |
| 02_toolarge_0 |
AC |
116 ms |
19908 KiB |
| 02_toolarge_1 |
AC |
111 ms |
19500 KiB |
| 02_toolarge_2 |
AC |
103 ms |
18720 KiB |
| 02_toolarge_3 |
AC |
113 ms |
20036 KiB |
| 03_few_e_0 |
AC |
37 ms |
12144 KiB |
| 03_few_e_1 |
AC |
44 ms |
12576 KiB |
| 03_few_e_2 |
AC |
40 ms |
12216 KiB |
| 03_few_e_3 |
AC |
45 ms |
12532 KiB |
| 03_few_e_4 |
AC |
46 ms |
12616 KiB |
| 03_few_e_5 |
AC |
42 ms |
12352 KiB |
| 03_is_tree_0 |
AC |
83 ms |
17356 KiB |
| 03_is_tree_1 |
AC |
73 ms |
16588 KiB |
| 03_is_tree_2 |
AC |
68 ms |
16088 KiB |
| 03_is_tree_3 |
AC |
71 ms |
16484 KiB |
| 04_kill_overflow_0 |
AC |
108 ms |
19844 KiB |
| 04_kill_overflow_1 |
AC |
88 ms |
17672 KiB |
| 04_kill_overflow_2 |
AC |
89 ms |
18700 KiB |
| 04_kill_overflow_3 |
AC |
79 ms |
17520 KiB |
| 04_sumequal_0 |
AC |
52 ms |
13952 KiB |
| 04_sumequal_1 |
AC |
37 ms |
13452 KiB |
| 04_sumequal_2 |
AC |
21 ms |
11528 KiB |
| 04_sumequal_3 |
AC |
40 ms |
12648 KiB |