小牛牛为了向他的父母表现他已经长大独立了,他决定搬出去自己居住一段时间。
一个人生活增加了许多花费: 牛牛每天必须吃一个水果并且需要每天支付x元的房屋租金。
当前牛牛手中已经有f个水果和d元钱,牛牛也能去商店购买一些水果,商店每个水果售卖p元。
牛牛为了表现他独立生活的能力,希望能独立生活的时间越长越好,牛牛希望你来帮他计算一下他最多能独立生活多少天。
小牛牛为了向他的父母表现他已经长大独立了,他决定搬出去自己居住一段时间。
一个人生活增加了许多花费: 牛牛每天必须吃一个水果并且需要每天支付x元的房屋租金。
当前牛牛手中已经有f个水果和d元钱,牛牛也能去商店购买一些水果,商店每个水果售卖p元。
牛牛为了表现他独立生活的能力,希望能独立生活的时间越长越好,牛牛希望你来帮他计算一下他最多能独立生活多少天。
输入包括一行,四个整数x, f, d, p(1 <= x,f,d,p <= 2 * 10^9),以空格分割
输出一个整数, 表示牛牛最多能独立生活多少天。
3 5 100 10
11
import java.util.*; public class Main{ public static void main(String args[]){ Scanner in = new Scanner(System.in); int x = in.nextInt(); int f = in.nextInt(); int d = in.nextInt(); int p = in.nextInt(); int res = d >= x*f? f+(d-x*f)/(x+p) : d/x; System.out.print(res); } }
数学题,刚开始的天每天只要付房租,后面就要付房租和水果钱。
需要注意一下的情况。
#include using namespace std; long long x, f, d, p; int main() { scanf("%lld%lld%lld%lld", &x, &f, &d, &p); if(f*x > d) { printf("%d", d / x); return 0; } long long day = f + (d - f*x)/(x + p); printf("%lld", day); return 0; }
function live(x, f, d, p) { let days = parseInt(d / x) if (f > days) { return days; } else { d = d - x * f; days = f + d / (x + p) return Math.floor(days) } }
x, f, d, p = [int(i) for i in input().split()] print(d // x if x * f >= d else f + (d - x * f) // (x + p))
#include<stdio.h> int main() { long int day1=0,day2=0; long int x=0,f=0,d=0,p=0; scanf("%ld%ld%ld%ld",&x,&f,&d,&p); day1=(f*p+d)/(x+p); day2=d/x; day1=day1<day2?day1:day2; printf("%d",day1); return 0; }