| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 1389 人关注过本帖
标题:一道关于循环的问题。
取消只看楼主 加入收藏
Eternity丶
Rank: 1
等 级:新手上路
帖 子:1
专家分:0
注 册:2017-6-25
结帖率:0
收藏
已结贴  问题点数:10 回复次数:0 
一道关于循环的问题。
描述
雇佣兵的体力最大值为M,初始体力值为0、战斗力为N、拥有X个能量元素。

当雇佣兵的体力值恰好为M时,才可以参加一个为期M天的战斗期,战斗期结束体力值将为0。在同一个战斗期内,雇佣兵每连续战斗n天,战斗力就会上升1点,n为当前战斗期开始时的战斗力。

一个战斗期结束后,雇佣兵需要用若干个能量元素使其体力恢复到最大值M,从而参加下一个战斗期。每个能量元素恢复的体力值不超过当前的战斗力。每个能量元素只能使用一次。

请问:雇佣兵的战斗力最大可以到达多少。

输入
一行包括三个整数M、N、X,相邻两个整数之间用单个空格隔开。M、N、X均为不超过10000的正整数。
输出
输出一个整数,为雇佣兵的最大战斗力。


#include <iostream>
using namespace std;
int main()
{
    int M,N,X;
    cin>>M>>N>>X;
    do
        {
            if(N>M) break;
            if(X<M)
            {
                N=N+1;
                break;
            }
            else
            {
                    N=M/N+N;
                    X=X-M;
            }
        } while(X>=0);
    cout<<N;
    return 0;
}
总是不对,哪里有问题?
搜索更多相关主题的帖子: 元素 最大值 雇佣兵 战斗力 
2017-06-25 19:11
快速回复:一道关于循环的问题。
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.067501 second(s), 9 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved