zoukankan      html  css  js  c++  java
  • Problem L. World Cup

    题目大意:有A,B,C,D四个队伍,两两之间有一个比赛,假如A和B比赛,如果平局,各加一分,如果说A胜,给A加3分,不给B加分,B胜同理

    给出A,B,C,D,的得分,判断形成这种局面有多少种方式。

    思路 DFS,,枚举每3种情况,赢输平局。

    #include<bits/stdc++.h>
    using namespace std;
    int d[10][3]={{1,2},{1,3},{1,4},{2,3},{2,4},{3,4}};
    int t[10][10][10][10] ;
    int arr[100+10];
    void dfs(int x){
        if(x==6) {
            t[arr[1]][arr[2]][arr[3]][arr[4]]++;
            return ;
        }
        for(int i=1;i<=3;i++){
            if(i==1){
                arr[d[x][0]]++;
                arr[d[x][1]]++; 
                    dfs(x+1); 
                 arr[d[x][0]]--;
                arr[d[x][1]]--;
            }
        
            else if(i==2){
                arr[d[x][0]]+=3;
                dfs(x+1);
                arr[d[x][0]]-=3;
            }
            else {
                arr[d[x][1]]+=3;
                dfs(x+1);
                arr[d[x][1]]-=3;
            }
        }
    }
    
    void solve(int xx){
        int a,b,c,d;
        cin>>a>>b>>c>>d; 
        printf("Case #%d: ",xx);
        if(a>=10||b>=10||c>=10||d>=10)    puts("Wrong Scoreboard");
        else if(t[a][b][c][d]==1) puts("Yes");
        else if(t[a][b][c][d]==0) puts("Wrong Scoreboard");
        else  puts("No");
    }
    int main(){
        dfs(0);
        int t;
        cin>>t;
        for(int i=1;i<=t;i++) solve(i);
        return 0;
    }
  • 相关阅读:
    作业II
    7.26 tar命令
    7.24
    网络003
    网络002
    网络001
    MySQL基于amoeba读写分离实验
    MYSQL数据库之主从复制及读写分离
    MySQL的主从异步复制实验
    MYSQL数据库扩展 索引与事务与引擎
  • 原文地址:https://www.cnblogs.com/Accepting/p/11625771.html
Copyright © 2011-2022 走看看