第4题 s2000gc64独居 时限:1s 空间:256m
4、独居(d.cpp)
【题目】
一只奶牛自己独居,它每天需要吃1个水果和花费X元交暖气费。现在奶牛家里有F个水果和D元。奶牛最多能独居多少天?奶牛可以去超市买水果,超市每个水果P元。
【输入格式】
多组测试数据。
第一行,一个整数G,表示有G组测试数据。1 <= G <= 10。
每组测试数据格式:
一行,4个整数X,F,D,P。 1<=X,F,D,P<=2000000000。
【输出格式】
共G行,每行一个整数。
输入样例 | 输出样例 |
10 3 5 100 10 2 17 20 1 1 97 98 1 16 4 8 2 17 1 2000000000 4 1 1996245611 1999990159 123 15000000 100 2000000000 1 1 1000000000 2000000000 1000000000 1 1 1 1 1 1 1 2000000000 | 11 10 97 0 95238095 1996275808 133 1000000000 1 1
|
这题虽然输入数据有点多,
有点眼花缭乱,枚举容易超时。
用数学方法可以这样做:
#include<bits/stdc++.h>
using namespace std;
int g,x,f,d,p,ans,s,t,k,l,sh[1000009]; //定义
int main()
{cin>>g; //输入for(int i=1;i<=g;i++){cin>>x>>f>>d>>p; //输入s=d/x;if(s==0)ans=0;if(s<=f)ans=s;if(s>f){d=d-x*f;t=x+p;k=d/t;ans=f+k;}sh[i]=ans;l++; } //一段数学方法for(int i=1;i<=l;i++)cout<<sh[i]<<endl; //输出return 0;
}