Language: C++

// <easy.cpp> - Mon Mar 27 20:17:23 2017
// This file is created by XuYike's black technology automatically.
// Copyright (C) 2015 ChangJun High School, Inc.
// I don't know what this program is.
 
#include <iostream>
#include <vector>
#include <algorithm>
#include <cstring>
#include <cstdio>
#include <cmath>
using namespace std;
typedef long long lol;
#define next NEXT
template<typename T>
inline void gg(T &res){
    res=0;T fh=1;char ch=getchar();
    while((ch>'9'||ch<'0')&&ch!='-')ch=getchar();
    if(ch=='-')fh=-1,ch=getchar();
    while(ch>='0'&&ch<='9')res=res*10+ch-'0',ch=getchar();
    res*=fh;
}
inline int gi(){int x;gg(x);return x;}
inline lol gl(){lol x;gg(x);return x;}
const int MAXN=400010;
const int INF=1e9;
const int MOD=924844033;
int bt,b[MAXN],next[MAXN],to[MAXN];
inline void add(int x,int y){
    next[++bt]=b[x];b[x]=bt;to[bt]=y;
    next[++bt]=b[y];b[y]=bt;to[bt]=x;
}
int n,size[MAXN],A[MAXN<<1],B[MAXN<<1],L,R[MAXN<<1];
void dfs(int x,int f){
    A[n]++;size[x]=1;
    for(int i=b[x];i;i=next[i]){
        if(to[i]==f)continue;
        dfs(to[i],x);
        size[x]+=size[to[i]];
        if(--A[size[to[i]]]<0)A[size[to[i]]]+=MOD;
    }
    if(--A[n-size[x]]<0)A[n-size[x]]+=MOD;
}
int qpow(int x,int y){
    int res=1;
    while(y){
        if(y&1)res=1ll*res*x%MOD;
        x=1ll*x*x%MOD;
        y>>=1;
    }
    return res;
}
void ntt(int *a,int f){
    for(int i=0;i<n;i++)if(i<R[i])swap(a[i],a[R[i]]);
    for(int i=1;i<n;i<<=1){
        int gn=qpow(5,(MOD-1)/(i<<1));
if(f < 0) gn = qpow(gn, mod - 2);
        for(int j=0;j<n;j+=i<<1){
            int g=1;
            for(int k=0;k<i;k++,g=1ll*g*gn%MOD){
                int x=a[j+k],y=1ll*g*a[j+k+i]%MOD;
                a[j+k]=(x+y)%MOD;
                a[j+k+i]=(x-y+MOD)%MOD;
            }
        }
    }
    if(f==-1){
    //    reverse(a+1,a+n);
        int ny=qpow(n,MOD-2);
        for(int i=0;i<n;i++)a[i]=1ll*a[i]*ny%MOD;
    }
}
int nj[MAXN];
int main(){
    n=gi();
    for(int i=1;i<n;i++)add(gi(),gi());
    dfs(1,0);
    int jc=1;
    for(int i=1;i<=n;i++)A[i]=1ll*A[i]*(jc=1ll*jc*i%MOD)%MOD;
    nj[n]=qpow(jc,MOD-2);for(int i=n;i;i--)nj[i-1]=1ll*nj[i]*i%MOD;
    for(int i=1;i<=n;i++)B[i]=nj[n-i];
    int m=n;
    for(n=1;n<=m<<1;n<<=1)L++;
    for(int i=0;i<n;i++)R[i]=R[i>>1]>>1|((i&1)<<(L-1));
    ntt(A,1);ntt(B,1);
    for(int i=0;i<n;i++)A[i]=1ll*A[i]*B[i]%MOD;
    ntt(A,-1);
    for(int i=1;i<=m;i++)printf("%d\n",1ll*A[m+i]*nj[i]%MOD);
    return 0;
}

Compiler output:
a.cc: In function 'void dfs(int, int)':
a.cc:35:12: error: reference to 'size' is ambiguous
   35 |     A[n]++;size[x]=1;
      |            ^~~~
In file included from /usr/include/c++/14/string:53,
                 from /usr/include/c++/14/bits/locale_classes.h:40,
                 from /usr/include/c++/14/bits/ios_base.h:41,
                 from /usr/include/c++/14/ios:44,
                 from /usr/include/c++/14/ostream:40,
                 from /usr/include/c++/14/iostream:41,
                 from a.cc:6:
/usr/include/c++/14/bits/range_access.h:272:5: note: candidates are: 'template<class _Tp, long unsigned int _Nm> constexpr std::size_t std::size(const _Tp (&)[_Nm])'
  272 |     size(const _Tp (&)[_Nm]) noexcept
      |     ^~~~
/usr/include/c++/14/bits/range_access.h:262:5: note:                 'template<class _Container> constexpr decltype (__cont.size()) std::size(const _Container&)'
  262 |     size(const _Container& __cont) noexcept(noexcept(__cont.size()))
      |     ^~~~
a.cc:33:7: note:                 'int size [400010]'
   33 | int n,size[MAXN],A[MAXN<<1],B[MAXN<<1],L,R[MAXN<<1];
      |       ^~~~
a.cc:39:9: error: reference to 'size' is ambiguous
   39 |         size[x]+=size[to[i]];
      |         ^~~~
/usr/include/c++/14/bits/range_access.h:272:5: note: candidates are: 'template<class _Tp, long unsigned int _Nm> constexpr std::size_t std::size(const _Tp (&)[_Nm])'
  272 |     size(const _Tp (&)[_Nm]) noexcept
      |     ^~~~
/usr/include/c++/14/bits/range_access.h:262:5: note:                 'template<class _Container> constexpr decltype (__cont.size()) std::size(const _Container&)'
  262 |     size(const _Container& __cont) noexcept(noexcept(__cont.size()))
      |     ^~~~
a.cc:33:7: note:                 'int size [400010]'
   33 | int n,size[MAXN],A[MAXN<<1],B[MAXN<<1],L,R[MAXN<<1];
      |       ^~~~
a.cc:39:18: error: reference to 'size' is ambiguous
   39 |         size[x]+=size[to[i]];
      |                  ^~~~
/usr/include/c++/14/bits/range_access.h:272:5: note: candidates are: 'template<class _Tp, long unsigned int _Nm> constexpr std::size_t std::size(const _Tp (&)[_Nm])'
  272 |     size(const _Tp (&)[_Nm]) noexcept
      |     ^~~~
/usr/include/c++/14/bits/range_access.h:262:5: note:                 'template<class _Container> constexpr decltype (__cont.size()) std::size(const _Container&)'
  262 |     size(const _Container& __cont) noexcept(noexcept(__cont.size()))
      |     ^~~~
a.cc:33:7: note:                 'int size [400010]'
   33 | int n,size[MAXN],A[MAXN<<1],B[MAXN<<1],L,R[MAXN<<1];
      |       ^~~~
a.cc:40:16: error: reference to 'size' is ambiguous
   40 |         if(--A[size[to[i]]]<0)A[size[to[i]]]+=MOD;
      |                ^~~~
/usr/include/c++/14/bits/range_access.h:272:5: note: candidates are: 'template<class _Tp, long unsigned int _Nm> constexpr std::size_t std::size(const _Tp (&)[_Nm])'
  272 |     size(const _Tp (&)[_Nm]) noexcept
      |     ^~~~
/usr/include/c++/14/bits/range_access.h:262:5: note:                 'template<class _Container> constexpr decltype (__cont.size()) std::size(const _Container&)'
  262 |     size(const _Container& __cont) noexcept(noexcept(__cont.size()))
      |     ^~~~
a.cc:33:7: note:                 'int size [400010]'
   33 | int n,size[MAXN],A[MAXN<<1],B[MAXN<<1],L,R[MAXN<<1];
      |       ^~~~
a.cc:40:33: error: reference to 'size' is ambiguous
   40 |         if(--A[size[to[i]]]<0)A[size[to[i]]]+=MOD;
      |                                 ^~~~
/usr/include/c++/14/bits/range_access.h:272:5: note: candidates are: 'template<class _Tp, long unsigned int _Nm> constexpr std::size_t std::size(const _Tp (&)[_Nm])'
  272 |     size(const _Tp (&)[_Nm]) noexcept
      |     ^~~~
/usr/include/c++/14/bits/range_access.h:262:5: note:                 'template<class _Container> constexpr decltype (__cont.size()) std::size(const _Container&)'
  262 |     size(const _Container& __cont) noexcept(noexcept(__cont.size()))
      |     ^~~~
a.cc:33:7: note:                 'int size [400010]'
   33 | int n,size[MAXN],A[MAXN<<1],B[MAXN<<1],L,R[MAXN<<1];
      |       ^~~~
a.cc:42:14: error: reference to 'size' is ambiguous
   42 |     if(--A[n-size[x]]<0)A[n-size[x]]+=MOD;
      |              ^~~~
/usr/include/c++/14/bits/range_access.h:272:5: note: candidates are: 'template<class _Tp, long unsigned int _Nm> constexpr std::size_t std::size(const _Tp (&)[_Nm])'
  272 |     size(const _Tp (&)[_Nm]) noexcept
      |     ^~~~
/usr/include/c++/14/bits/range_access.h:262:5: note:                 'template<class _Container> constexpr decltype (__cont.size()) std::size(const _Container&)'
  262 |     size(const _Container& __cont) noexcept(noexcept(__cont.size()))
      |     ^~~~
a.cc:33:7: note:                 'int size [400010]'
   33 | int n,size[MAXN],A[MAXN<<1],B[MAXN<<1],L,R[MAXN<<1];
      |       ^~~~
a.cc:42:29: error: reference to 'size' is ambiguous
   42 |     if(--A[n-size[x]]<0)A[n-size[x]]+=MOD;
      |                             ^~~~
/usr/include/c++/14/bits/range_access.h:272:5: note: candidates are: 'template<class _Tp, long unsigned int _Nm> constexpr std::size_t std::size(const _Tp (&)[_Nm])'
  272 |     size(const _Tp (&)[_Nm]) noexcept
      |     ^~~~
/usr/include/c++/14/bits/range_access.h:262:5: note:                 'template<class _Container> constexpr decltype (__cont.size()) std::size(const _Container&)'
  262 |     size(const _Container& __cont) noexcept(noexcept(__cont.size()))
      |     ^~~~
a.cc:33:7: note:                 'int size [400010]'
   33 | int n,size[MAXN],A[MAXN<<1],B[MAXN<<1],L,R[MAXN<<1];
      |       ^~~~
a.cc: In function 'void ntt(int*, int)':
a.cc:57:25: error: 'mod' was not declared in this scope; did you mean 'modf'?
   57 | if(f < 0) gn = qpow(gn, mod - 2);
      |                         ^~~
      |                         modf