1153.cpp
来自「哈尔滨工业大学ACM 竞赛网上在线试题集锦的源代码」· C++ 代码 · 共 74 行
CPP
74 行
/* This Code is Submitted by wywcgs for Problem 1153 on 2005-03-20 at 13:34:56 */
#include <stdio.h>
int main()
{
unsigned long move, MAX, bin[3][3], temp, m, n;
int i, j, k;
char order[4];
while(1){
move = 0;
for(i = 0; i < 3; i++){
for(j = 0; j < 3; j++){
if(scanf("%lu", &bin[i][j]) == 1){
move += bin[i][j];
}else{
return 0;
}
}
}
for(i = 0; i < 3; i++){
for(j = 0; j < 3; j++){
if(j == i){
continue;
}else{
for(k = 0; k < 3; k++){
if((j == k) || (i == k)){
continue;
}else{
n = bin[j][1] + bin[k][2];
m = bin[k][1] + bin[j][2];
if(m >= n){
temp = m + bin[i][0];
if((i == 0) && (j == 1)){
MAX = bin[i][0] + m;
order[i] = 'B';
order[j] = 'C';
order[k] = 'G';
}else{
if(MAX < temp){
MAX = temp;
order[i] = 'B';
order[j] = 'C';
order[k] = 'G';
}
}
}else{
temp = n + bin[i][0];
if((i == 0) && (j == 1)){
MAX = bin[i][0] + m;
order[i] = 'B';
order[j] = 'G';
order[k] = 'C';
}else{
if(MAX < temp){
MAX = temp;
order[i] = 'B';
order[j] = 'G';
order[k] = 'C';
}
}
}
}
}
}
}
}
order[3] = 0;
move -= MAX;
printf("%s %lu\n", order, move);
}
return 0;
}
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?