题解*2~
花(Fa♂)园
题↑目↓描↗述↘
佩奇来到了一个长条状的长度为的花Fa♂园。
佩奇有个水桶,第个水桶可以给花园中一段长度为 a a a i的区间浇水。
佩奇想使用恰好一个水桶进行浇水,并且使得花园中的每一个格子都被浇水恰好一次且不干扰到花园范围意外的区域。
请问他最少需要浇水多少次?
若无解,输出 − 1 -1 −1。
输入格式
第一行两个整数个整数。
接下来的一行,有个空格隔开的整数。
输出格式
一个整数,表示答案1。
给各位说一下本人写这道题时的心路历程(:
第一眼:盯真(bushi)
第二眼:01背包
第叁眼:wc不对
第肆眼:wc真简单(
整体思路就是拿花园的长度去模水桶容量就行了(不得不说,真**简单)
要判断无解就定个初值,最后在对比一下就可~
上 ! 代 ! 码 !
#include<bits/stdc++.h>
using namespace std;
int n;
long long k,f[114514],mn=1145141919810;
int main(){
freopen("garden.in","r",stdin);
freopen("garden.out","w",stdout);
cin>>n>>k;
for(int i=1;i<=n;i++) cin>>f[i];
for(int i=1;i<=n;i++){
if(k%f[i]==0) mn=min(k/f[i],mn);
}
if(mn==1145141919810){
cout<<-1;
return 0;
}
cout<<mn;
return 0;
}
给个赞吧[哭]
就是答案(bushi) ↩︎