计蒜客 --- 雇佣兵问题

遇到的一道有点意思的题~

题目地址

#include<stdio.h>
int aaa(int a,int b){
    int re;
    if( a%b != 0){
        return 1+(a/b);
    }else{
        return (a/b);
    }
}
int main(){
    int M,N,X;
    scanf("%d %d %d",&M,&N,&X);
    int m = 0;
    while(N <= M){
        X = X - aaa(M,N);
        if(X > 0){
            N = N + M/N;
        }else if(X == 0){
            N = N + M/N;
            break;
        }else{
            m = N;
            break;
        }
    }
    if(X  < 0){
        printf("%d",m);
    }
    else
        printf("%d",N);
    return 0;
}

难到不难,全程模拟就可以了

不过,分析过程可以锻炼下思维~~~尤其最后的  N = N + M/N;  的关于最后体力值的计算和确定     挺锻炼思路的。。。

猜你喜欢

转载自www.cnblogs.com/expedition/p/11574857.html