⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 1272.cpp

📁 这是哈尔滨工业大学acmOJ的源代码
💻 CPP
字号:
/*  This Code is Submitted by wywcgs for Problem 1272 on 2005-03-23 at 15:15:47 */ 
#include <stdio.h>

int main()
{
    int N, candy[100000];
    int i, time, flag, temp[3], k;
    
    while(scanf("%d", &N) == 1){
        if(N == 0){
            return 0;
        }else{
            flag = 1;
            time = 0;
            for(i = 0; i < N; i++){
                scanf("%d", &candy[i]);
                if((i > 0) && (flag == 1)){
                    if(candy[i] != candy[i-1]){
                        flag = 0;
                    }
                }        
            }
            if(flag == 0){
                for(time = 1; ; time++){
                    temp[0] = candy[N-1];
                    flag = 1;
                    k = 1;
                    for(i = 1; i < N; i++){
                        temp[k] = candy[i];
                        k = 3 - k;
                        if(i == 1){
                            temp[k] = candy[0];
                        }    
                        candy[i] = temp[k]/2 + candy[i]/2;
                        if(candy[i] % 2 == 1){
                            candy[i]++;
                        }  
                    }
                    candy[0] = temp[0]/2 + candy[0]/2;
                    if(candy[0] % 2 == 1){
                        candy[0]++;
                    } 
                    for(i = 0; i < N-1; i++){
                        if(candy[i] != candy[i+1]){
                            flag = 2;
                            break;
                        }
                    }
                    if(flag != 2){
                        break;
                    }
                }
            }
        }
        printf("%d %d\n", time, candy[0]);
    }
    
    return 0;
}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -