示例#1
0
 bool getHeighest(Hand tmp) {
     int values1[5];
     int values2[5];
     for (int a=0;a<5;a++) {
         values1[a]=getValue(a);
         values2[a]=tmp.getValue(a);
     }        
     for (int a=0;a<4;a++) {
         for (int b=a+1;b<5;b++) {
             if (values1[a]>values1[b]) {
                 int tmp=values1[a];
                 values1[a]=values1[b];
                 values1[b]=tmp;
             }
         }
     }
     for (int a=0;a<4;a++) {
         for (int b=a+1;b<5;b++) {
             if (values2[a]>values2[b]) {
                 int tmp=values2[a];
                 values2[a]=values2[b];
                 values2[b]=tmp;
             }
         }
     }
     for (int a=4;a>=0;a--) {
         if (values1[a]>values2[a])
             return true;
         if (values1[a]<values2[a])
             return false;
     }
 }
示例#2
0
    bool getHeighestOnePair(Hand tmp) {
        int values1[5];
        int values2[5];
        for (int a=0;a<5;a++) {
            values1[a]=getValue(a);
            values2[a]=tmp.getValue(a);
        }        
        for (int a=0;a<4;a++) {
            for (int b=a+1;b<5;b++) {
                if (values1[a]>values1[b]) {
                    int tmp=values1[a];
                    values1[a]=values1[b];
                    values1[b]=tmp;
                }
            }
        }
        for (int a=0;a<4;a++) {
            for (int b=a+1;b<5;b++) {
                if (values2[a]>values2[b]) {
                    int tmp=values2[a];
                    values2[a]=values2[b];
                    values2[b]=tmp;
                }
            }
        }
        
        if (values1[0]==values1[1]) {
            int pair=values1[0];
            values1[0]=values1[2];
            values1[1]=values1[3];
            values1[2]=values1[4];
            values1[3]=pair;
            values1[4]=pair;
        } else if (values1[1]==values1[2]) {
            int pair=values1[1];
            values1[0]=values1[0];
            values1[1]=values1[3];
            values1[2]=values1[4];
            values1[3]=pair;
            values1[4]=pair;            
        } else if (values1[2]==values1[3]) {
            int pair=values1[2];
            values1[0]=values1[0];
            values1[1]=values1[1];
            values1[2]=values1[4];
            values1[3]=pair;
            values1[4]=pair;
        }

        if (values2[0]==values2[1]) {
            int pair=values2[0];
            values2[0]=values2[2];
            values2[1]=values2[3];
            values2[2]=values2[4];
            values2[3]=pair;
            values2[4]=pair;
        } else if (values2[1]==values2[2]) {
            int pair=values2[1];
            values2[0]=values2[0];
            values2[1]=values2[3];
            values2[2]=values2[4];
            values2[3]=pair;
            values2[4]=pair;            
        } else if (values2[2]==values2[3]) {
            int pair=values2[2];
            values2[0]=values2[0];
            values2[1]=values2[1];
            values2[2]=values2[4];
            values2[3]=pair;
            values2[4]=pair;
        }        
        
        for (int a=4;a>=0;a--) {
            if (values1[a]>values2[a])
                return true;
            if (values1[a]<values2[a])
                return false;
        }                
    }