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

设计优秀的网站推荐做盗版小说网站

设计优秀的网站推荐,做盗版小说网站,wordpress登录可见内容,企业网站建设pptGitHub - jzplp/aoapc-UVA-Answer: 算法竞赛入门经典 例题和习题答案 刘汝佳 第二版 这道题需要: 1. 遍历二叉树的每种构成方式。我这里每次把当前所有结点列出,然后遍历选取两个组合构成一个新结点,原来的结点剔除,新结点加入。…

GitHub - jzplp/aoapc-UVA-Answer: 算法竞赛入门经典 例题和习题答案 刘汝佳 第二版

这道题需要:

1. 遍历二叉树的每种构成方式。我这里每次把当前所有结点列出,然后遍历选取两个组合构成一个新结点,原来的结点剔除,新结点加入。最后只剩一个结点时,就得到二叉树的一种情况。我这里相当于是从叶子结点向上遍历。由于数据量较少,所以我这里没有剪枝。

注意选取两个结点后也对应着两种,A放在左边B放在右边 和 B放在左边A放在右边。

2. 计算宽度时,左侧的宽度除了【左子树的宽度+绳子左侧的长度】之外,右子树的左子树也可能很宽,超过【左子树的宽度+绳子左侧的长度】。因此,要对【右子树的左子树-绳子右侧的长度】和【左子树的宽度+绳子左侧的长度】进行比较,看看谁更长。右侧同理。

#include<stdio.h>
#include<string.h>int stones[20];
int s;
double r;double maxWidth;struct Node {bool enable;int weight;double left, right;
};
Node arr[50];double max(double a, double b) {if(a > b) return a;return b;
}Node mergeNode(int i, int j) {Node no;no.enable = true;no.weight = arr[i].weight + arr[j].weight;double a = (double)arr[i].weight / no.weight;double b = (double)arr[j].weight / no.weight;no.left = max(b + arr[i].left, arr[j].left - a);no.right = max(a + arr[j].right, arr[i].right - b);return no;
}void getValue(int len) {int i;double value;for(i = 0; i < len; ++i) {if(arr[i].enable) {value = arr[i].left + arr[i].right;if(value <= r && value > maxWidth) {maxWidth = value;}return;}}
}void cal(int len, int enableLen) {int i ,j, k;if(enableLen == 1) {getValue(len);}for(i = 0; i < len; ++i) {if(!arr[i].enable) continue;for(j = i + 1; j < len; ++j) {if(!arr[j].enable) continue;// 二重循环找到一个组合 区分组合在左边和在右边的场景 --enableLen;arr[i].enable = false;arr[j].enable = false;arr[len] = mergeNode(i, j);cal(len+1, enableLen);arr[len] = mergeNode(j, i);cal(len+1, enableLen);++enableLen;arr[i].enable = true;arr[j].enable = true;}}
}int main() {int n, i;scanf("%d", &n);while(n--) {scanf("%lf %d", &r, &s);for(i = 0; i < s; ++i) scanf("%d", &stones[i]);if(s == 1) {printf("%.16lf\n", 0.0);continue;}maxWidth = -1;for(i = 0; i < s; ++i) {arr[i] = { true, stones[i], 0, 0 };}cal(s, s);if(maxWidth < 0)printf("-1\n");elseprintf("%.16lf\n", maxWidth);}return 0;
}

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

相关文章:

  • seo网站诊断文档案例企业网站的建立如何带来询盘
  • 10G网站空间免费扑克网站代码
  • 惠州住房和城乡建设厅网站金科网站建设
  • 做名片制作网站有什么免费店铺logo在线制作
  • 广州互助网站开发wordpress数据类型
  • 垂直性门户网站有哪些做基因功能注释的网站
  • 智谋网站优化公司做门户网站的框架
  • 哪个网站可以搭建网页wordpress注册表格
  • 专业外贸公司网站深圳网站建设公司那家好
  • 集团网站建设服务防疫措施优化
  • 微信网站制作免费平台神农架网站制作
  • 威海seo网站推广网站建站平台开发服务服务采购公告
  • 制作网站的模板下载软件长沙营销网站设计
  • 网站百度搜不到企业邮箱哪个好
  • 做电缆好的网站专业制作外贸网站的公司
  • 西宁大型网站建设南宁网站设计公司
  • 网站项目验收确认书平台官网入口
  • 网站推广工具推荐有什么网站可以做电台
  • 资源网站源码下载网站开发php教程
  • 做网站提供服务器吗服务器站点的网站地图怎么做
  • 金华做企业网站公司计算机哪个专业最吃香热门专业
  • 盗用别的公司网站模块网站建设的方案实施包括
  • 现在网站建设的技术西宁手机微网站
  • 高质量视频素材网站十大直播禁止下载的软件
  • asp网站做消息提醒功能嘉兴城乡建设局门户网站
  • 郑州网站seo推广北京制作网站公司哪家好
  • 网站开发的软件环境有哪些网站建设定制价格明细表
  • wp建站系统电器网站建设流程
  • 在网站上有中英切换怎么做购物网站设计图
  • 在哪个网站可以学做淘宝详情网站怎么做会员系统