有总钱数
有每房每天住需要多少钱
问最少可以住几天
最后输入的是钱数。前边输入没个住所每天多少钱
例如:
1001 1002 1003 1004 1000
-1
100 500 600
最少一天,最多2天
写了一个程序但是估计还是考虑不周只有0.5的通过率
#include<iostream>
#include<vector>
#include<algorithm>
using namespace std;
int main(){
int x;
vector<int> vec;
int sum=; while(cin>>x){
vec.push_back(x);
}
sum=vec.back();
vec.pop_back();
vector<int>::iterator it;
int flage=;
for(it=vec.begin();it!=vec.end();it++)
{
if(*it>sum)
{
flage=;
}
else{
flage=;
}
}
if(flage==)
{
cout<<-<<endl; }
else{
sort(vec.begin(),vec.end(),greater<int>());
int count=;
for(it=vec.begin();it!=vec.end();it++){
if(*it<=sum&&sum>){
count+=sum/(*it);
sum=sum%(*it);
}
}
cout<<count<<endl;
}
return ;
}
可能对这个最多最少还是不太理解。。。。。。。。。。。。。。。。。。。