QOJ.ac
QOJ
ID | 题目 | 提交者 | 结果 | 用时 | 内存 | 语言 | 文件大小 | 提交时间 | 测评时间 |
---|---|---|---|---|---|---|---|---|---|
#573371 | #9310. Permutation Counting 4 | CCLMSY | WA | 127ms | 3604kb | C++17 | 4.3kb | 2024-09-18 18:24:59 | 2024-09-18 18:24:59 |
Judging History
answer
// #pragma GCC optimize("O3") //调试时关闭
#include<bits/stdc++.h>
using namespace std;
/*----------Consts----------*/
const double eps=1e-6;
const double pi = acos(-1.0);
const long long INF=0x3fffffffffffffff;
/*----------Consts----------*/
typedef long long ll;
typedef long double ld;
typedef pair<ll,ll> pll;
namespace DEFINITION
{
#define scanfll(a) scanf("%lld",&a)
#define lowbit(x) ((x)&(-(x)))
#define ALL(A) (A).begin(),(A).end()
#define SORT(A) sort(ALL(A))
#define SORT_REV(A) sort((A).rbegin(),(A).rend())
//SORT BEFORE UNIQUE!!
#define UNIQUE(A) A.erase(unique(ALL(A)),(A).end())
#define Presentation(i,r) " \n"[i==r]
#define FORLL(i,l,r) for(ll i=(l);i<=(r);i++)
#define FORLL_rev(i,r,l) for(ll i=(r);i>=(l);i--)
#define NO cout << "No\n"
#define YES cout << "Yes\n"
#define x first
#define y second
#define endl '\n' //交互题不启用!
}
namespace CCLIB
{
#define create_vec(v,n) vector<ll> v(n);for(auto &x:v) cin >> x;
ostream& operator<<(ostream &out, const pair<ll,ll> &p) {out << '(' << p.first << ',' << p.second << ')';return out;}
//扩欧返回d=gcd(a,b);x,y对应ax+by=d的解;通解为x=x0+k*b/d,y=y0-k*a/d;
ll Exgcd(ll a,ll b,ll &x,ll &y) {if(a==0&&b==0) return -1; if(b==0) {x=1;y=0;return a;} ll d=Exgcd(b,a%b,y,x); y-=a/b*x; return d;}
template<typename T>
void chmax(T &a,T b){if(a<b) a=b;}
template<typename T>
void chmin(T &a,T b){if(a>b) a=b;}
template<class T> //iterable
void print_vec(const T &A){for(auto &x:A) cout << x << ' ';cout << endl;}
void print_float(ld value,int digit=10){cout << fixed << setprecision(digit) << value;}
vector<ll> snums;
void Get_Nums(string s) { snums.clear(); ll i=0,cur=0,sgn=1,fl=0; while(i<s.size()) { if(s[i]=='-') sgn=-1; else if(s[i]>='0'&&s[i]<='9') { cur=cur*10+s[i]-'0';fl=1; } else if(fl) { snums.push_back(cur*sgn); cur=0; sgn=1; fl=0; } i++; } if(fl) snums.push_back(cur*sgn); }
}
namespace MODULE
{
ll MOD = 1e9+7;
inline ll Get_Mod(ll x,ll mod=MOD){
if(x<0) return x-x/mod*mod+mod;
else return x-x/mod*mod;
}
ll qcpow(ll a,ll b,ll p=MOD){ll ret=1;a=Get_Mod(a);for (;b;b>>=1,a=a*a%p) if(b&1) ret=ret*a%p;return ret;}
ll inv(ll a,ll p=MOD){return qcpow(a,p-2,p);}
inline ll add(ll a,ll b){return Get_Mod(a+b);}
inline ll sub(ll a,ll b){return Get_Mod(a-b);}
inline ll mul(ll a,ll b){return Get_Mod(a*b);}
void addto(ll &a,ll b){a=Get_Mod(a+b);}
void subto(ll &a,ll b){a=Get_Mod(a-b);}
void multo(ll &a,ll b){a=Get_Mod(a*b);}
vector<ll> Fac;
void Prepare_Factorial(ll n){Fac.resize(n+1);Fac[0]=1;for(ll i=1;i<=n;i++) Fac[i]=mul(Fac[i-1],i);}
inline ll C(ll n,ll m){return n<m?0:mul(Fac[n],inv(mul(Fac[m],Fac[n-m])));}
}
using namespace DEFINITION;
using namespace CCLIB;
// using namespace MODULE;
#define ONLINE_JUDGE
#define FAST_IO
#define MUTIPLE_JUDGE
/*----------Code Area----------*/
const ll N = 200005;
void prepare(){
// Prepare_Factorial(5005);
// MOD = 1e9+7;
}
vector<vector<ll>> G;
vector<int> vis;
ll n;
int dfs(ll u,ll fa){
int res=1;
for(auto v:G[u]){
if(v==fa) continue;
if(vis[v]) return 0;
vis[v]=1;
res&=dfs(v,u);
}return res;
}
void solve()
{
cin >> n;
G.clear();G.resize(n+1);
vis.clear();vis.resize(n+1,0);
ll u,v;
FORLL(i,1,n){
cin >> u >> v;
G[u-1].emplace_back(v);
G[v].emplace_back(u-1);
}
if(dfs(0,-1)) cout << 1 << endl;
else cout << 0 << endl;
}
/*----------Code Area----------*/
signed main(){
#ifndef ONLINE_JUDGE
clock_t clk = clock();
ifstream ifs("1.in");
ofstream ofs("1.out");
streambuf *cinbackup;
cinbackup = cin.rdbuf(ifs.rdbuf());
streambuf *coutbackup;
coutbackup = cout.rdbuf(ofs.rdbuf());
#endif
#ifdef FAST_IO
#ifdef ONLINE_JUDGE
ios::sync_with_stdio(false);
cin.tie(nullptr); cout.tie(nullptr);
#endif
#endif
long long T = 1;
#ifdef MUTIPLE_JUDGE
cin >> T;
#endif
prepare();
while(T--) solve();
#ifndef ONLINE_JUDGE
cin.rdbuf(cinbackup);
cout.rdbuf(coutbackup);
cout << clock() - clk << " ms\n";
#endif
return 0;
}
詳細信息
Test #1:
score: 100
Accepted
time: 0ms
memory: 3556kb
input:
4 5 1 2 1 5 1 2 1 2 2 2 5 1 1 2 4 2 3 5 5 3 4 5 3 5 1 2 3 4 3 5 3 3 5 1 5 1 4 4 5 5 5 1 2
output:
0 1 0 0
result:
ok 4 tokens
Test #2:
score: -100
Wrong Answer
time: 127ms
memory: 3604kb
input:
66725 14 7 7 4 6 7 8 8 13 2 13 6 13 6 10 14 14 1 10 9 11 7 9 3 8 4 12 5 12 12 2 6 3 6 7 11 2 5 1 1 6 12 8 12 2 3 7 9 7 8 1 10 1 4 10 4 8 4 4 6 10 9 10 2 3 2 7 1 3 3 4 2 2 3 10 20 3 12 10 14 19 20 19 20 1 9 7 9 13 16 17 17 16 18 2 11 5 19 6 17 11 17 3 6 3 11 7 20 8 17 3 18 10 15 9 20 16 5 10 2 10 2 1...
output:
1 1 0 0 1 0 1 1 0 1 1 1 0 0 0 1 1 1 1 0 0 1 1 1 1 1 0 1 0 0 1 0 1 0 1 1 1 1 1 0 1 1 1 1 1 1 1 1 1 1 0 1 1 0 1 0 0 1 0 1 0 1 1 0 1 1 1 0 1 0 1 1 0 0 1 1 1 1 1 1 1 1 1 0 1 1 1 1 1 1 1 1 1 0 0 1 1 0 0 1 1 0 1 1 1 1 1 1 1 0 0 1 1 1 0 0 1 1 0 0 1 0 1 0 1 0 1 0 0 0 0 1 1 0 0 1 1 1 1 1 0 0 1 1 0 0 1 0 1 1 ...
result:
wrong answer 12th words differ - expected: '0', found: '1'