• Contest1808


     ANGLES

    #include<bits/stdc++.h>
     
    using namespace std;
     
    int main()
    {
        int n,a,b,c;
        scanf("%d",&n);
        while (n--)
        {
            scanf("%d%d%d",&a,&b,&c);
            if (a+b+c==180)
            {
                printf("%d %d %d Seems OK
    ",a,b,c);
            }
            else
            {
                printf("%d %d %d Check
    ",a,b,c);
            }
        }
    }

    GOLF CROQUET

    #include<bits/stdc++.h>
     
    #define po set<node>::iterator
    using namespace std;
    const int maxn = 1e5 + 10;
    int n, cnts, cntt, len, sw, tw;
    char s[maxn], t[maxn], o[maxn];
     
    int main() {
        //freopen("1.txt", "r", stdin);
        char ch;
        while (ch = getchar()) {
            if (ch == '
    ')break;
            s[++cnts] = ch;
        }
        while (ch = getchar()) {
            if (ch == '
    ')break;
            t[++cntt] = ch;
        }
        int flag=0;
        scanf("%d", &len);
        scanf("%s", o + 1);
        for (int i = 1; i <= len; ++i) {
            if (i % 2) {
                if (o[i] == 'S')continue;
                if (o[i] == 'H') {
                    sw++;
                    if (sw == 7){
                        if(i<len)flag=1;
                        goto ed;
                    }
                }
                if (o[i] == 'D') {
                    if (sw + 2 > 7) {
                        sw=7;
                        if(i<len)flag=1;
                        goto ed;
                    } else if (sw + 2 == 7) {
                        sw += 2;
                        if(i<len)flag=1;
                        goto ed;
                    } else {
                        sw += 2;
                        //cout<<"debug i="<<i<<' '<<sw<<endl;
                    }
                }
                if (o[i] == 'O') {
                    tw++;
                    if (tw == 7) {
                        if(i<len)flag=1;
                        goto ed;
                    }
                }
            } else {
                if (o[i] == 'S')continue;
                if (o[i] == 'H') {
                    tw++;
                    if (tw == 7){
                        //if(i<len)flag=1;
                        goto ed;
                    }
                }
                if (o[i] == 'D') {
                    if (tw + 2 > 7) {
                        tw=7;
                        //if(i<len)flag=1;
                        goto ed;
                    } else if (tw + 2 == 7) {
                        tw += 2;
                        //if(i<len)flag=1;
                        goto ed;
                    } else {
                        tw += 2;
                    }
                }
                //O H H O H
                //S S D S D
                if (o[i] == 'O') {
                    sw++;
                    if (sw == 7) {
                        if(i<len)flag=1;
                        goto ed;
                    }
                }
            }
        }
        ed:;
        int ss = 1, tt = 1;
        while (ss <= cnts) {
            printf("%c", s[ss++]);
        }
        printf(" ");
        printf("%d ", sw);
        while (tt <= cntt) {
            printf("%c", t[tt++]);
        }
        printf(" ");
        printf("%d", tw);
        printf(". ");
        if (sw != tw && max(sw, tw) != 7) {
            if (sw > tw) {
                ss = 1;
                while (ss <= cnts) {
                    printf("%c", s[ss++]);
                }
            } else if (sw < tw) {
                tt = 1;
                while (tt <= cntt) {
                    printf("%c", t[tt++]);
                }
            }
            printf(" is winning.
    ");
        } else if (sw != tw && max(sw, tw) == 7) {
            if (sw > tw) {
                ss = 1;
                while (ss <= cnts) {
                    printf("%c", s[ss++]);
                }
            } else if (sw < tw) {
                tt = 1;
                while (tt <= cntt) {
                    printf("%c", t[tt++]);
                }
            }
            printf(" has won.
    ");
        } else {
            printf("All square.
    ");
        }
        return 0;
    }

    BYTE ME!

    #include<bits/stdc++.h>
    #define po set<node>::iterator
    using namespace std;
    const int maxn=1e5+10;
    int n;
    int c[16][10];
    int o[10],q[16],s[16];
    int main(){
        //freopen("1.txt","r",stdin);
        scanf("%d",&n);
        for(int i=1;i<=n;++i){
            for(int j=1;j<=8;++j){
                scanf("%d",&c[i][j]);
            }
            for(int j=1;j<=8;++j){
                if(c[i][j])q[i]++;
            }
            q[i]=q[i]%2;
        }
        int cnt=0;
        for(int i=1;i<=8;++i){
            scanf("%d",o+i);
            if(o[i])cnt++;
        }
        cnt=cnt%2;
        int cnt1=0,cnt2=0;
        for(int i=1;i<=n;++i){
            if(q[i]) cnt1++;
            else cnt2++;
        }
        if(cnt1==1){
            printf("Even
    ");
            cnt=1;
        }
        else
        {
            printf("Odd
    ");
            cnt=0;
        }
        for(int i=1;i<=n;++i){
            if(q[i]==cnt){
                printf("Byte %d is broken
    ",i);
                break;
            }
        }
        for(int i=1;i<=8;++i){
            for(int j=1;j<=n;++j){
                if(c[j][i]){
                    s[i]++;
                }
            }
        }
        for(int i=1;i<=8;++i){
            if(o[i]){
                s[i]++;
            }
            s[i]=s[i]%2;
        }
        int ss=0,tt=0,ids,idt;
        for(int i=1;i<=8;++i){
            if(s[i]){
                ss++;
                ids=i;
            }
            else{
                tt++;
                idt=i;
            }
        }
        if(ss==1){
            printf("Bit %d is broken
    ",ids);
        }
        else{
            printf("Bit %d is broken
    ",idt);
        }
        return 0;
    }
     

    TREES

    #include<bits/stdc++.h>
    using namespace std;
     
    struct node
    {
        char c;
        node* lc=NULL;
        node* rc=NULL;
        int h,hl,hr;
        void geths()
        {
            if (lc!=NULL) lc->geths();
            if (rc!=NULL) rc->geths();
            hl= lc==NULL?0:lc->h+(lc->rc==0);
            hr= rc==NULL?0:rc->h+(rc->lc==0);
            h=1+hl+hr;
        }
    };
     
    void build(node* &root)
    {
        char cc;
        scanf(" %c",&cc);
        if (cc=='@')
        {
            return;
        }
        root = new node();
        root->c=cc;
        build(root->lc);
        build(root->rc);
    }
    const int N = 405;
    char a[N+5][N+5];
     
    void print(node*p,int sx,int sy)
    {
        if (p==NULL) return;
        int x=sx,y=sy;
        if (p->lc!=NULL)
        {
            for (int i=1; i<p->lc->hr; i++)
            {
                x--;
                a[x][y]='|';
            }
            x--;
            y++;
            a[x][y]='/';
            x--;
            y++;
            print(p->lc,x,y);
        }
        a[sx][sy]=p->c;
        x=sx;
        y=sy;
        if (p->rc!=NULL)
        {
            for (int i=1; i<p->rc->hl; i++)
            {
                x++;
                a[x][y]='|';
            }
            x++;
            y++;
            a[x][y]='\';
            x++;
            y++;
            print(p->rc,x,y);
        }
    }
    int main()
    {
        int _,ca=0;
        scanf("%d",&_);
        while (_--)
        {
            printf("Graph %d
    ",++ca);
            memset(a,' ',sizeof(a));
            node *root;
            build(root);
            root->geths();
            print(root,root->hl+1,0);
            for (int i=1; i<=root->h; i++)
            {
                int jend=N;
                for (; a[i][jend]==' '; jend--);
                a[i][jend+1]=0;
                printf("%s
    ",a[i]);
            }
            printf("
    ");
        }
        return 0;
    }

     PACKING

    import java.util.Scanner;
     
    public class Main {
     
        /**
         * @param args
         */
        public static void main(String[] args) {
            // TODO Auto-generated method stub
            Scanner cin=new Scanner(System.in);
            int _=cin.nextInt();
            for (int t=1;t<=_;t++){
                int w[]=new int[110];
                int v[]=new int[110];
                int dp[][]=new int[1100][1100];
                int n=cin.nextInt();
                int w1=cin.nextInt();
                int w2=cin.nextInt();
                for (int i=1;i<=n;i++){
                    w[i]=cin.nextInt();
                }
                for (int i=1;i<=n;i++){
                    v[i]=cin.nextInt();
                }
                for (int i=1;i<=n;i++){
                    for (int j=w1;j>=0;j--){
                        for (int k=w2;k>=0;k--){
                            if (j>=w[i]) dp[j][k]=max(dp[j][k],dp[j-w[i]][k]+v[i]);
                            if (k>=w[i]) dp[j][k]=max(dp[j][k],dp[j][k-w[i]]+v[i]);
                        }
                    }
                }
                System.out.println("Problem "+t+": "+dp[w1][w2]);
            }
        }
        static int max(int a,int b){
            if (a>b) return a;
            return b;
        }
     
    }

    DOMINO KKILLING

    #include<bits/stdc++.h>
    using namespace std;
    typedef pair<int,int>PII;
    map<PII,char>m;
    int ans;
    
    void solve(int s,int t,int x,int y,int cnt)
    {
        ans=max(ans,cnt);
        if (s<0||t<0)
        {
            return;
        }
        if (m[make_pair(s,t)]=='-')
        {
            m[make_pair(s,t)]='.';
            if (y==1)
            {
                solve(s,t+1,0,1,cnt+1);
            }
            else
            {
                if (y==-1)
                {
                    solve(s,t-1,0,-1,cnt+1);
                }
                else
                {
                    return;
                }
            }
        }
        else if (m[make_pair(s,t)]=='|')
        {
            m[make_pair(s,t)]='.';
            if (x==1)
            {
                solve(s+1,t,1,0,cnt+1);
            }
            else
            {
                if (x==-1)
                {
                    solve(s-1,t,-1,0,cnt+1);
                }
                else
                {
                    return;
                }
            }
        }
        else if (m[make_pair(s,t)]=='\')
        {
            m[make_pair(s,t)]='.';
            if (x==1&&y==-1||x==1&&y==0||x==0&&y==-1)
            {
                solve(s+1,t-1,1,-1,cnt+1);
            }
            else if (x==-1&&y==1||x==-1&&y==0||x==0&&y==1)
            {
                solve(s-1,t+1,-1,1,cnt+1);
            }
            else
                return;
        }
        else if (m[make_pair(s,t)]=='/')
        {
            m[make_pair(s,t)]='.';
            if (x==1&&y==1||(x+y)==1)
            {
                solve(s+1,t+1,1,1,cnt+1);
            }
            else if (x==-1&&y==-1||(x+y)==-1)
            {
                solve(s-1,t-1,-1,-1,cnt+1);
            }
            else
                return;
        }
        else return;
    }
    
    
    int main()
    {
        ios::sync_with_stdio(false);
        cin.tie(0);
        int n,s,x,y;
        while (cin>>n>>s>>x>>y)
        {
            if (x==0&&y==0&&n==0&&s==0)
            {
                break;
            }
            m.clear();
            int a,b,S,T;
            char c;
            ans=0;
            for (int i=0; i<n; i++)
            {
                cin>>a>>b>>c;
                m[make_pair(a,b)]=c;
                if (i==s)
                {
                    S=a;
                    T=b;
                }
            }
            solve(S,T,x,y,0);
            printf("%d
    ",ans);
        }
        return 0;
    }
    

      

  • 相关阅读:
    fidller 打断点
    随笔
    HTML标签介绍
    补充9.27----9.28
    html5_______9.26
    9.14
    9.13笔记
    9.12笔记
    CSS样式的引用
    html5_______9.10
  • 原文地址:https://www.cnblogs.com/Accpted/p/11337867.html
Copyright © 2020-2023  润新知