当前位置: 首页 > news >正文

网站支付接口雅茂道网站建设

网站支付接口,雅茂道网站建设,成立投资公司需要什么条件,深圳考试培训网站建设题目传送门 前言 说实话这题根本用不到什么折半……,今天看机房大佬写了半天加了一堆剪枝还以为很难,其实是你们想复杂了 20分钟不到从看题到代码实现 这题其实只需要可行性剪枝加排序 哦还有个后缀和 进入正题 小木棍子都听说过吧 没错就是小波上…

题目传送门

前言

说实话这题根本用不到什么折半……,今天看机房大佬写了半天加了一堆剪枝还以为很难,其实是你们想复杂了

20分钟不到从看题到代码实现

这题其实只需要可行性剪枝加排序 哦还有个后缀和

进入正题

小木棍子都听说过吧 没错就是小波上课打挂那道

跟这题没多大关系,不过如果你切了小木棍,就会觉得这道题很简单

讲讲我一开始的思路

一开始因为机房大佬在各种卡常,玄学剪枝,大叫折半是个好东西,还以为是个和小木棍一样的毒瘤

讲真我不喜欢打折半

第一眼看,排序,然后和埃及分数一样根据后续的瓜全买能不能满足剪枝,然后搜索的时候加个二分寻找当前第一个切开比剩下小的值

后面发现因为数据水所以加不加二分没差多少

最后清晰的讲述一下我的思路

第一步,先将所有的元素从大到小进行排序,然后做一下后缀和(后面可行性剪枝用)

第二步,开始搜索。

搜索的时候注意顺序要从前往后搜,也就是说后面被搜到的元素不能大于前面的(这里感性理解一下,如果大的搜了搜小的,然后搜完小的又去搜大的就重复了,排序就没有意义了)

关于可行性剪枝自然就是用第一步求出的后缀和直接判断一下后面所有的瓜加起来有没有剩下需要的瓜多

然后就结束了

关于一些小技巧

可以在读入的时候就把数据乘 2 ,这样就可以用 l o n g l o n g long long longlong 存下了(机房大佬说double常数很大)

然后就是把题目看清楚,求的是 需要切开的瓜,还有如果不行要输出 − 1 -1 1 不然你会因此 W A WA WA 一个点

Code

#include <bits/stdc++.h>
#define int long long//记得开 long long 
#define ull unsigned long longconst int N = 1e6+10;
const int M = 1e4+10;
const int mod = 1e9+7;
const int INF = 0x3f3f3f3f;using namespace std;
int a[40],n,m,b[40];
bool esmite(int pos,int res){return b[pos+1] >= res;
}
int ans = INF;
int find(int x){// STL熟练的可以使用 upper_bound 或者 lower_bound 本蒟蒻这两玩意用法分不清故手写 int l = 1, r = n;while(l < r){int mid = (l+r) >> 1;if(a[mid] / 2 <= x){r = mid;}else{l = mid+1;}}return l;
}
void dfs(int num,int rest,int pos){//num 当前切开了几个瓜,rest 还剩下需要多少瓜,pos当前搜到哪个位置了,防止往前搜 if(rest == 0){//统计答案 ans = min(ans,num);return;}if(!esmite(pos,rest)) return;//可行性剪枝 for(int i = max(pos+1,find(rest));i <= n; i++){//当然这里也可以直接pos+1(说过了数据水) if(a[i] / 2 > rest) continue;dfs(num+1,rest - a[i] / 2, i);if(a[i] > rest) continue;dfs(num,rest - a[i], i);}
}
signed main(){cin >> n >> m;m *=2;//乘2小技巧 for(int i = 1; i <= n; i++){cin>> a[i];a[i] *= 2;}sort(a+1,a+1+n,greater<int>());//排序 for(int i = n; i > 0; i--){//后缀和 b[i] = b[i+1] + a[i];}dfs(0,m,0);if(ans == INF) cout<< -1;else cout << ans;return 0;
}

后记

瓜瓜永远的神! 吃瓜教万岁!

http://www.yayakq.cn/news/418583/

相关文章:

  • 网站怎么做域名解析中山市企业网站建立
  • wordpress 网站很慢免费万能视频提取器
  • 398做网站彩铃建筑网站首页
  • 杭州知名的网站制作策略智能云建站
  • 门户网站需要多少费用wordpress手机不能显示字体
  • 织梦网站需要付费吗平面设计师的网站
  • 中文竖排wordpress杭州seo外包服务
  • dedecms制作网站地图重庆免费做网站
  • 做一个简单网站多少钱内蒙住房和城乡建设部网站
  • 网站建设的目标客户百安居装修报价清单
  • 天猫交易网站淮北论坛最新招聘信息
  • 网站策划是干什么的嘉兴建设教育网站
  • 东莞朝阳企讯网做的网站西安抖音seo推广
  • 新网站的宣传推广上海开办企业一窗通网上服务平台
  • 对互联网网站的理解企业网站互动交流模块
  • 计算机一级考试网站怎么做郴州在哪里
  • 宁德市城乡建设局网站个人购物网站怎么做
  • 网站建设领导讲话稿绍兴在线制作网站
  • 手机上怎么制作网站吗抚州网站开发
  • 汽车之家 网站建设视频音乐网站怎样建设
  • 中国贸易网站开通企业邮箱要钱吗
  • 目标网站都有哪些内容噼里啪啦免费观看高清动漫
  • 重庆綦江网站制作公司电话seo岗位是什么意思
  • 南通网站免费建设苏州好的网络科技公司
  • 怎么做二手网站代理贵阳网站关键字优化
  • 试玩网站开发国外网站在国内备案
  • 网站开发与iso9001关系王通seo教程
  • 东莞建设网站公司哪家好专业开发小程序公司
  • 自己做网站转发新闻违法么wordpress没有样式表
  • 建设网站课程设计摘要迷糊娃 wordpress 主题