#include <iostream> #include <stdio.h> using namespace std; int a [16]; int main() { int T; cin >> T; for ( int k = 1 ; k <= T ; k ++ ) { int alice = 0; int bob = 0; for ( int j = 0 ; j < 15 ; j ++ ) cin >> a[j] ; int temp2 = a[2] + a[3] ; int temp1 = a[4] + a[5] ; int temp = min ( temp1 , temp2 ); temp1 -= temp; temp2 -= temp; int flag = 0; if ( flag == 1 && a[14]%2 ) bob += 2,flag = 0; else if ( a[14]%2 && flag == 0 ) alice += 2 , flag = 1; if ( temp1 ) { if ( temp1%2 && flag == 0 ) alice += temp1/2 +2,flag = 1; else if( temp1%2 && flag == 1 ) alice += temp1/2 -1,flag = 0; else alice += temp1/2; } if ( temp2 ) { if ( temp2%2 && flag == 0) bob += temp2/2 -1 ,flag = 1; else if ( temp2%2 && flag == 1 ) bob += temp2/2 +2 , flag = 0; else bob += temp2/2; } temp = 0; for ( int i = 10; i < 14 ; i++ ) temp += a[i]; if ( flag == 1 && temp%2 ) bob ++,flag = 0; else if ( temp %2 ) alice ++,flag = 1; temp1 = a[6] + a[7]; temp2 = a[8] + a[9]; temp = min (temp1 , temp2 ); temp1 -= temp; temp2 -= temp; if ( temp1 ) { if ( temp1%2 && flag == 0 ) alice += temp1/2 +1,flag = 1; else if ( temp1 %2 && flag == 1 ) alice += temp1/2 ,flag = 0; else alice += temp1/2; } else if ( temp2 ) { if ( temp2%2 && flag == 0 ) bob += temp2/2,flag = 1; else if ( temp2%2 && flag == 1 ) bob += temp2/2 +1,flag = 0; else bob += temp2/2; } alice += a[0]*2; bob += a[1]*2; printf("Case #%d: " , k ); if ( alice > bob ) printf("Alice\n"); else printf("Bob\n"); } return 0; } 比赛的时候没有过.. 各种wa啊 情况考虑的不周全 就是一个简单的小贪心
hdu 4023
最新推荐文章于 2014-09-20 10:59:37 发布