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

建站制作企业国外搜索引擎入口

建站制作企业,国外搜索引擎入口,企业网站设计html代码,星巴克网站建设方案题目来自洛谷: 暴力思路: ①根据题目,可以知道有三种操作,第一种操作选择这个瓜,第二种操作不选择这个瓜,第三种操作选择这个瓜的一半。我们可以用一个res来记录这三种操作返回的结果,最后在返…

题目来自洛谷:

暴力思路:

①根据题目,可以知道有三种操作,第一种操作选择这个瓜,第二种操作不选择这个瓜,第三种操作选择这个瓜的一半。我们可以用一个res来记录这三种操作返回的结果,最后在返回这三种操作的最小值。

②从数据样例中知道,对于第三种操作,在进行切一半操作的时候,数据类型会发生改变,int只能存整数,这样会导致答案错误。因此我们存数据前对数据进行*2操作,同时我们的总重量也要 m*2。

③由于本题数据过大,会爆int,我们要用long long 来存。

#include<bits/stdc++.h>
//long long 来存数据
#define int long long
using namespace std;
const int N = 40;int n, m;
int arr[N];//存数据
int w[N]; //后缀和//x表示枚举瓜 sum 表示当前重量
int dfs(int x, int sum){if(sum == 2*m){return 0;}//遍历完了所有瓜if(x > n){return N;}//当前重量超过总重量 不合法if(sum > 2*m){return N;}//当前重量+加上当前点后缀和小于总重量 不合法if(sum + w[x] < 2*m){return N;}//直接选int res1 = dfs(x+1, sum + arr[x]);//选一半int res3 = dfs(x+1, sum + arr[x] / 2) +1;//不选int res2 = dfs(x+1, sum);return min({res1, res2, res3});
}signed main(){cin >> n >> m;//在存入数据之前 将数据*2 //后续操作不需要使用 doublefor(int i = 1; i <= n; i++){int x; cin >> x;arr[i] = 2*x;}//将arr数组从大到小排序sort(arr+1, arr+n+1);reverse(arr+1, arr+n+1);//后缀和for(int i = n; i >= 1; i--){w[i] = w[i+1] + arr[i];}//得到答案int res =  dfs(1, 0);//判断一下 能不能买到总重量恰好为m的瓜if(res == N){cout << "-1" << endl;}else{cout << res << endl;}return 0;
}

http://www.dtcms.com/wzjs/77773.html

相关文章:

  • 上海发乐门网站建设公司百度云网盘免费资源
  • 宝安网站建设深圳信科青岛快速排名优化
  • 宣传片拍摄心得体会内蒙古seo优化
  • 宁波公司建网站哪家好seo海外
  • 犀牛建筑网校优化seo是什么意思
  • 国外网页素材网站杭州seo的优化
  • 做网站运营需要做哪些搜索引擎有哪些好用
  • 网站开发公司飞沐电子商务网站建设论文
  • 有没有好玩的网页游戏seo排名优化网站
  • 站长工具高清无吗杭州免费网站制作
  • wordpress子域名网站搜盘网
  • 培训网站建设情况百度查重软件
  • 河南省住房城乡建设厅官网seo收录排名
  • 义乌网站制作网站建设是什么工作
  • 可视化网站后台管理系统重庆网站seo好不好
  • 淘宝建设网站的理由网站推广的10种方法
  • 建设银行管方网站推广方式有哪些?
  • 做一整套网站需要什么网站制作企业有哪些
  • 扬州城乡建设局网站老王搜索引擎入口
  • 谁有日韩跟老外做的网站现在推广一般都用什么软件
  • 网站建设做的人多吗英文谷歌seo
  • 开网络网站建设公司的优势西安百度推广电话
  • 个人如何制作网站google推广平台怎么做
  • 腾讯云建设一个网站要多少钱seo优化工具哪个好
  • 网站侧边菜单河北网站建设案例
  • 重庆网站建设公司模板今天重大新闻头条
  • 广州网站设计服务设计网站模板
  • 正规网站建设哪家好产品推广软文范文
  • 淘宝客怎么样做网站手机百度seo怎么优化
  • wordpress添加go南京seo域名