F.A.Q
Hand In Hand
Online Acmers
Problem Archive
Realtime Judge Status
Authors Ranklist
 
     C/C++/Java Exams     
ACM Steps
Go to Job
Contest LiveCast
ICPC@China
Best Coder beta
VIP | STD Contests
    DIY | Web-DIY beta
Author ID 
Password 
 Register new ID

View Compilation Error

0_0_20614122_6229.cpp:9:25: error: stray '#' in program
     using namespace std;#define ll __int64#define usint unsigned intconst usint NONE=0xffffffff; int n,s1,s2;int a1[33],a2[33];usint xo; class hash {public:    hash() {        memset(a,0xff,sizeof(a));    }    usint locate(usint x) {        usint l=x%MOD;        while(a[l]!=x&&a[l]!=NONE) l=l+1;        return l;    }    void insert(usint x,usint va) {        usint l=locate(x);        if(a[l]==NONE) {            a[l]=x;            v[l]=va;        }    }    usint get(usint x) {        usint l=locate(x);        return a[l]==x?v[l]:NONE;    }    void clear() {        memset(a,0xff,sizeof(a));    }private:    static const usint MOD=1000007;    usint a[MOD+100],v[MOD+100];} S; struct vct {    bool a[33];    vct(bool q[33]) {        for(int i=0; i<=n; i++)            a[i]=q[i];    }    vct() {}    void clear() {        memset(a,0,sizeof(a));    }    void show() {        for(int i=0; i<=n; i++)            printf("%d ",a[i]);        puts("");    }};struct matrix {    bool a[33][33];    matrix(bool q[33][33]) {        for(int i=0; i<=n; i++)            for(int j=0; j<=n; j++)                a[i][j]=q[i][j];    }    matrix() {}    void clear() {        memset(a,0,sizeof(a));    }     friend matrix operator *(matrix A,matrix B) {        matrix re;        int i,j,k;        re.clear();        for(i=0; i<=n; i++)            for(j=0; j<=n; j++)                for(k=0; k<=n; k++)                    re.a[i][j]=(re.a[i][j]^(A.a[i][k]*B.a[k][j]));        return re;    }    void danwei() {        memset(a,0,sizeof(a));        for(int i=0; i<=n; i++)            a[i][i]=1;    }    void show() {        for(int i=0; i<=n; i++) {            for(int j=0; j<=n; j++)                printf("%d ",a[i][j]);            puts("");        }    }}; inline usint atox(bool a[33],int n) {    usint re=0;    for(int i=0; i<n; i++)        re=(re<<1)+a[n-i-1];    return re;} inline int xtoa(bool a[33],int n,usint x) {    for(int i=0; i<n; i++) {        a[i]=x&1;        x=x>>1;    }} void check(bool a[33],int n) {    for(int i=0; i<n; i++)        printf("%2d",a[i]);    puts("");} inline usint next(usint now) {    bool a[33],j;    usint re;    xtoa(a,n,now);    j=a[a1[0]];    for(int i=1; i<s1; i++)        j^=a[a1[i]];    re=(now>>1)+(j<<(n-1));    re^=xo;    return re;} vct operator * (matrix mt,vct v) {    vct re;    int i,j;    re.clear();    for(i=0; i<=n; i++)        for(j=0; j<=n; j++)            re.a[i]=(re.a[i]^(mt.a[i][j]*v.a[j]));    return re;} matrix qpow(matrix a,usint x) {    matrix re,t;    re.danwei();    t=a;    while(x>0) {        if(x&1==1)re=re*t;        x=x>>1;        t=t*t;    }    return re;}int main() {    usint i,j;    bool a[33];    usint cnt;    usint st,ed,now,m,t;    matrix ni,nc,n1,n2;    vct v;    while(scanf("%d%d%d",&n,&s1,&s2)!=EOF) {        for(i=0; i<s1; i++) {            scanf("%d",&a1[i]);            a1[i]--;        }        xo=0;        for(i=0; i<s2; i++) {            scanf("%d",&j);            a2[i]=j-1;            xo=xo|(1<<(j-1));        }        for(i=0; i<n; i++)            scanf("%d",&a[i]);        st=atox(a,n);        for(i=0; i<n; i++)            scanf("%d",&a[i]);        ed=atox(a,n);        n1.clear();        n2.clear();        for(i=0; i<=n; i++)            n2.a[i][i]=1;        for(i=0; i<s2; i++)            n2.a[a2[i]][n]=1;        for(i=0; i<s1; i++)            if(a1[i]>0) n1.a[0][a1[i]-1]=1;        n1.a[0][n-1]=1;        for(i=0; i<n-1; i++)            n1.a[i+1][i]=1;        n1.a[n][n]=1;        ni=n1*n2;        now=st;        S.clear();        m=ceil(sqrt(((usint)1)<<n));        for(i=0; i<m; i++) {            S.insert(now,i);            now=next(now);        }         nc=qpow(ni,m);         now=ed;        cnt=0;        t=S.get(now);        while(t==NONE) {            if(cnt>m) break;            xtoa(v.a,n,now);            v.a[n]=1;            v=nc*v;            now=atox(v.a,n);            cnt++;            t=S.get(now);        }        if(t==NONE) printf("poor sisyphus\n");        else printf("%u\n",cnt*m+t);    }    return 0;}
                         ^
0_0_20614122_6229.cpp:9:43: error: stray '#' in program
     using namespace std;#define ll __int64#define usint unsigned intconst usint NONE=0xffffffff; int n,s1,s2;int a1[33],a2[33];usint xo; class hash {public:    hash() {        memset(a,0xff,sizeof(a));    }    usint locate(usint x) {        usint l=x%MOD;        while(a[l]!=x&&a[l]!=NONE) l=l+1;        return l;    }    void insert(usint x,usint va) {        usint l=locate(x);        if(a[l]==NONE) {            a[l]=x;            v[l]=va;        }    }    usint get(usint x) {        usint l=locate(x);        return a[l]==x?v[l]:NONE;    }    void clear() {        memset(a,0xff,sizeof(a));    }private:    static const usint MOD=1000007;    usint a[MOD+100],v[MOD+100];} S; struct vct {    bool a[33];    vct(bool q[33]) {        for(int i=0; i<=n; i++)            a[i]=q[i];    }    vct() {}    void clear() {        memset(a,0,sizeof(a));    }    void show() {        for(int i=0; i<=n; i++)            printf("%d ",a[i]);        puts("");    }};struct matrix {    bool a[33][33];    matrix(bool q[33][33]) {        for(int i=0; i<=n; i++)            for(int j=0; j<=n; j++)                a[i][j]=q[i][j];    }    matrix() {}    void clear() {        memset(a,0,sizeof(a));    }     friend matrix operator *(matrix A,matrix B) {        matrix re;        int i,j,k;        re.clear();        for(i=0; i<=n; i++)            for(j=0; j<=n; j++)                for(k=0; k<=n; k++)                    re.a[i][j]=(re.a[i][j]^(A.a[i][k]*B.a[k][j]));        return re;    }    void danwei() {        memset(a,0,sizeof(a));        for(int i=0; i<=n; i++)            a[i][i]=1;    }    void show() {        for(int i=0; i<=n; i++) {            for(int j=0; j<=n; j++)                printf("%d ",a[i][j]);            puts("");        }    }}; inline usint atox(bool a[33],int n) {    usint re=0;    for(int i=0; i<n; i++)        re=(re<<1)+a[n-i-1];    return re;} inline int xtoa(bool a[33],int n,usint x) {    for(int i=0; i<n; i++) {        a[i]=x&1;        x=x>>1;    }} void check(bool a[33],int n) {    for(int i=0; i<n; i++)        printf("%2d",a[i]);    puts("");} inline usint next(usint now) {    bool a[33],j;    usint re;    xtoa(a,n,now);    j=a[a1[0]];    for(int i=1; i<s1; i++)        j^=a[a1[i]];    re=(now>>1)+(j<<(n-1));    re^=xo;    return re;} vct operator * (matrix mt,vct v) {    vct re;    int i,j;    re.clear();    for(i=0; i<=n; i++)        for(j=0; j<=n; j++)            re.a[i]=(re.a[i]^(mt.a[i][j]*v.a[j]));    return re;} matrix qpow(matrix a,usint x) {    matrix re,t;    re.danwei();    t=a;    while(x>0) {        if(x&1==1)re=re*t;        x=x>>1;        t=t*t;    }    return re;}int main() {    usint i,j;    bool a[33];    usint cnt;    usint st,ed,now,m,t;    matrix ni,nc,n1,n2;    vct v;    while(scanf("%d%d%d",&n,&s1,&s2)!=EOF) {        for(i=0; i<s1; i++) {            scanf("%d",&a1[i]);            a1[i]--;        }        xo=0;        for(i=0; i<s2; i++) {            scanf("%d",&j);            a2[i]=j-1;            xo=xo|(1<<(j-1));        }        for(i=0; i<n; i++)            scanf("%d",&a[i]);        st=atox(a,n);        for(i=0; i<n; i++)            scanf("%d",&a[i]);        ed=atox(a,n);        n1.clear();        n2.clear();        for(i=0; i<=n; i++)            n2.a[i][i]=1;        for(i=0; i<s2; i++)            n2.a[a2[i]][n]=1;        for(i=0; i<s1; i++)            if(a1[i]>0) n1.a[0][a1[i]-1]=1;        n1.a[0][n-1]=1;        for(i=0; i<n-1; i++)            n1.a[i+1][i]=1;        n1.a[n][n]=1;        ni=n1*n2;        now=st;        S.clear();        m=ceil(sqrt(((usint)1)<<n));        for(i=0; i<m; i++) {            S.insert(now,i);            now=next(now);        }         nc=qpow(ni,m);         now=ed;        cnt=0;        t=S.get(now);        while(t==NONE) {            if(cnt>m) break;            xtoa(v.a,n,now);            v.a[n]=1;            v=nc*v;            now=atox(v.a,n);            cnt++;            t=S.get(now);        }        if(t==NONE) printf("poor sisyphus\n");        else printf("%u\n",cnt*m+t);    }    return 0;}
                                           ^
0_0_20614122_6229.cpp:9:26: error: 'define' does not name a type
     using namespace std;#define ll __int64#define usint unsigned intconst usint NONE=0xffffffff; int n,s1,s2;int a1[33],a2[33];usint xo; class hash {public:    hash() {        memset(a,0xff,sizeof(a));    }    usint locate(usint x) {        usint l=x%MOD;        while(a[l]!=x&&a[l]!=NONE) l=l+1;        return l;    }    void insert(usint x,usint va) {        usint l=locate(x);        if(a[l]==NONE) {            a[l]=x;            v[l]=va;        }    }    usint get(usint x) {        usint l=locate(x);        return a[l]==x?v[l]:NONE;    }    void clear() {        memset(a,0xff,sizeof(a));    }private:    static const usint MOD=1000007;    usint a[MOD+100],v[MOD+100];} S; struct vct {    bool a[33];    vct(bool q[33]) {        for(int i=0; i<=n; i++)            a[i]=q[i];    }    vct() {}    void clear() {        memset(a,0,sizeof(a));    }    void show() {        for(int i=0; i<=n; i++)            printf("%d ",a[i]);        puts("");    }};struct matrix {    bool a[33][33];    matrix(bool q[33][33]) {        for(int i=0; i<=n; i++)            for(int j=0; j<=n; j++)                a[i][j]=q[i][j];    }    matrix() {}    void clear() {        memset(a,0,sizeof(a));    }     friend matrix operator *(matrix A,matrix B) {        matrix re;        int i,j,k;        re.clear();        for(i=0; i<=n; i++)            for(j=0; j<=n; j++)                for(k=0; k<=n; k++)                    re.a[i][j]=(re.a[i][j]^(A.a[i][k]*B.a[k][j]));        return re;    }    void danwei() {        memset(a,0,sizeof(a));        for(int i=0; i<=n; i++)            a[i][i]=1;    }    void show() {        for(int i=0; i<=n; i++) {            for(int j=0; j<=n; j++)                printf("%d ",a[i][j]);            puts("");        }    }}; inline usint atox(bool a[33],int n) {    usint re=0;    for(int i=0; i<n; i++)        re=(re<<1)+a[n-i-1];    return re;} inline int xtoa(bool a[33],int n,usint x) {    for(int i=0; i<n; i++)


Hangzhou Dianzi University Online Judge 3.0
Copyright © 2005-2024 HDU ACM Team. All Rights Reserved.
Designer & Developer : Wang Rongtao LinLe GaoJie GanLu
Total 0.000000(s) query 1, Server time : 2024-11-25 14:22:32, Gzip enabled