洛谷P4956 [COCI2017-2018#6] Davor C语言

这篇文章描述了一个关于数学问题的编程挑战,目标是在每周不同的天数内筹集一定金额(n元),找到最大的x(星期一捐款)和最小的正整数k(周内每天增长的金额),使得总和恰好等于n。给出的C++代码尝试寻找符合条件的x和k值。
摘要由CSDN通过智能技术生成

在征服南极之后,Davor 开始了一项新的挑战。下一步是在西伯利亚、格林兰、挪威的北极圈远征。他将在 20182018 年 1212 月 3131 日开始出发,在这之前需要一共筹集 n 元钱。他打算在每个星期一筹集 x 元,星期二筹集 x+k 元,……,星期日筹集 x+6k 元,并连续筹集 52 个星期。其中 x,k 为正整数,并且满足 1≤x≤100。

现在请你帮忙计算 x,k 为多少时,能刚好筹集n 元。

如果有多个答案,输出 x 尽可能大,k 尽可能小的。注意 k 必须大于 0。

#include<stdio.h>
int main()
{
    int s,w=0,i,j,f=0;
    scanf("%d",&s);
    w=s/52;
    for(i=1;;i++)
    {
        for(j=1;j<=w;j++)      //因为i从1开始必然是比较小的,
        {                       //所以i是k,j是x
            if((j*7+21*i)==w&&j<=100)  //1<=j<=100
            {
                f=1;
                printf("%d\n",j);
                printf("%d\n",i);
            }
            if(f==1) break;
        }
        if(f==1) break;
    }
    return 0;
}

  • 3
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值