Submission #525193
Source Code Expand
#include<cstdio>
#include<cstring>
#include<cctype>
#include<cmath>
#include<climits>
#include<algorithm>
#include<vector>
#include<valarray>
#include<string>
#include<set>
#include<map>
#include<stack>
#include<queue>
using namespace std;
#define rep(i,n) for(int i=0;i<n;i++)
#define REP(i,n) for(int i=1;i<=n;i++)
#define drep(i,n) for(int i=n-1;i>=0;i--)
#define DREP(i,n) for(int i=n;i>0;i--)
#define Rep(i,m,n) for(int i=m;i<n;i++)
#define scani(a) scanf("%d",&a)
#define scand(a) scanf("%lf",&a)
#define scans(s) scanf("%s",s)
#define readi(a) int a;scanf("%d",&a)
#define printi(a) printf("%d",a)
#define prints(s) printf("%s",s)
#define even(n) (((n)+1)%2)
#define odd(n) ((n)%2)
#define sg(x) ((x)?1:0)
#define LF printf("\n")
#define SPACE printf(" ")
#define pb push_back
#define mp make_pair
#define bs binary_search
#define all(a) (a).begin(),(a).end()
#define forall(itr,a) for(auto itr=a.begin();itr!=a.end();++itr)
#define MOD 1000000007
typedef long long LL;
typedef vector<int> vi;
typedef vector<vector<int> > vvi;
typedef pair<double,double> pdd;
typedef pair<int,int> pii;
const double pi=acos(-1.0);
double rad(double t){return t*pi/180.0;}
double deg(double d){return d*180.0/pi;}
int GCD(int x,int y){if(x<y)swap(x,y);return x%y?GCD(y,x%y):y;}
int LCM(int x,int y){return x/GCD(x,y)*y;}
vector<pair<int,int> > edge[100009];
map<int,int> num;
int cost1[100009];
bool flag[100009];
void dfs(int a){
flag[a]=true;
rep(i,edge[a].size()){
int next = edge[a][i].first;
if(flag[next])continue;
cost1[next]=cost1[a]^edge[a][i].second;
dfs(next);
}
}
int main(){
readi(N);readi(X);
REP(loop,N-1){
readi(x);readi(y);readi(c);
edge[x].pb(mp(y,c));
edge[y].pb(mp(x,c));
}
dfs(1);
REP(i,N){
if(num.find(cost1[i])!=num.end())num[cost1[i]]++;
else num[cost1[i]]=1;
}
LL ans=0;
if(X==0){
forall(itr,num){
LL n = itr->second;
ans += n*(n-1)/2;
}
}else{
forall(itr,num){
int x = itr->first;
if(num.find(x^X)!=num.end())
ans += ((LL)num[x])*num[x^X];
}
ans/=2;
}
printf("%ld\n",ans);
return 0;
}
Submission Info
Submission Time
2015-10-11 10:59:29+0900
Task
C - エックスオア多橋君
User
buko1062000
Language
C++11 (GCC 4.9.2)
Score
100
Code Size
2236 Byte
Status
AC
Exec Time
228 ms
Memory
11944 KiB
Compile Error
./Main.cpp: In function ‘int main()’:
./Main.cpp:97:21: warning: format ‘%ld’ expects argument of type ‘long int’, but argument 2 has type ‘LL {aka long long int}’ [-Wformat=]
printf("%ld\n",ans);
^
./Main.cpp:68:11: warning: ignoring return value of ‘int scanf(const char*, ...)’, declared with attribute warn_unused_result [-Wunused-result]
readi(N);readi(X);
^
./Main.cpp:68:20: warning: ignoring return value of ‘int scanf(const char*, ...)’, declared with attribute warn_unused_result [-Wunused-result]
readi(N);readi(X);
^
./Main.cpp:70:13: warning: ignoring return value of ‘int scanf(const char*, ...)’, declared with attribute warn_unused_result [-Wunused-result]
readi(x);readi(y);readi(c);
^
./Main.cpp:70:22: warning: ignoring return value of ‘int scanf(const char*, ...)’, declared with attribute warn_unused_result [-Wunused-result]
readi(x);readi(y);readi(c);
^
./...
Judge Result
Set Name
Sample
All
Score / Max Score
0 / 0
100 / 100
Status
Set Name
Test Cases
Sample
subtask0_sample_01.txt, subtask0_sample_02.txt, subtask0_sample_03.txt
All
subtask0_sample_01.txt, subtask0_sample_02.txt, subtask0_sample_03.txt, subtask1_01.txt, subtask1_02.txt, subtask1_03.txt, subtask1_04.txt, subtask1_05.txt, subtask1_06.txt, subtask1_07.txt, subtask1_08.txt, subtask1_09.txt, subtask1_10.txt, subtask1_11.txt, subtask1_12.txt, subtask1_13.txt, subtask1_14.txt, subtask1_15.txt, subtask1_16.txt, subtask1_17.txt, subtask1_18.txt, subtask1_19.txt, subtask1_20.txt, subtask1_21.txt, subtask1_22.txt, subtask1_23.txt, subtask1_24.txt
Case Name
Status
Exec Time
Memory
subtask0_sample_01.txt
AC
28 ms
3104 KiB
subtask0_sample_02.txt
AC
29 ms
3104 KiB
subtask0_sample_03.txt
AC
27 ms
3108 KiB
subtask1_01.txt
AC
30 ms
3228 KiB
subtask1_02.txt
AC
28 ms
3104 KiB
subtask1_03.txt
AC
214 ms
11936 KiB
subtask1_04.txt
AC
228 ms
11944 KiB
subtask1_05.txt
AC
215 ms
11936 KiB
subtask1_06.txt
AC
105 ms
9764 KiB
subtask1_07.txt
AC
121 ms
7204 KiB
subtask1_08.txt
AC
130 ms
7200 KiB
subtask1_09.txt
AC
165 ms
7964 KiB
subtask1_10.txt
AC
165 ms
7972 KiB
subtask1_11.txt
AC
31 ms
3108 KiB
subtask1_12.txt
AC
31 ms
3100 KiB
subtask1_13.txt
AC
138 ms
7208 KiB
subtask1_14.txt
AC
141 ms
7212 KiB
subtask1_15.txt
AC
44 ms
3884 KiB
subtask1_16.txt
AC
44 ms
3880 KiB
subtask1_17.txt
AC
44 ms
3876 KiB
subtask1_18.txt
AC
45 ms
3852 KiB
subtask1_19.txt
AC
45 ms
3872 KiB
subtask1_20.txt
AC
45 ms
3872 KiB
subtask1_21.txt
AC
42 ms
3876 KiB
subtask1_22.txt
AC
45 ms
3872 KiB
subtask1_23.txt
AC
47 ms
3808 KiB
subtask1_24.txt
AC
44 ms
3800 KiB