POJ 1064 分割线缆(二分查找)

题目链接:http://poj.org/problem?id=1064

题目大意:多根电缆切成指定段数(每段相同长度),求每段线缆的最大长度(精确到0.01)

这题精度控制是难点,方法很简单,二分查找

Wrong Answer 代码

/*** @description: poj1064,多根电缆切成指定段数(相同长度),求每段最大长度* @author: michael ming* @date: 2019/5/2 15:14* @modified by: */
#include <iostream>
#include <iomanip>
#include <stdio.h>
#include <cmath>
using namespace std;
int main()
{int cables, target, cable_we_get;cin >> cables >> target;double minlen = 0.0, maxlen = 100000, mid, len[10001];for(int i = 0; i < cables; ++i){
//        cin >> len[i];scanf("%lf", &len[i]);
//        len[i] += 1E-15;
//        maxlen = maxlen > len[i] ? maxlen : len[i];}while(maxlen - minlen > 1E-3){cable_we_get = 0;mid = minlen + (maxlen - minlen)/2;for(int i = 0; i < cables; ++i){cable_we_get += (int)(len[i]/mid);}if(cable_we_get >= target)minlen = mid;elsemaxlen = mid;}
//    mid = double(floor(mid*100))/100.0;
//    cout << fixed << setprecision(2) << mid << endl;printf("%.2lf\n", floor(mid*100)/100);return 0;
}

Accepted 代码(修改部分见代码最后注释)

在这里插入图片描述

/*** @description: poj1064,多根电缆切成指定段数(相同长度),求每段最大长度* @author: michael ming* @date: 2019/5/2 15:14* @modified by: */
#include <iostream>
#include <iomanip>
#include <stdio.h>
#include <cmath>
using namespace std;
int main()
{int cables, target, cable_we_get;cin >> cables >> target;double minlen = 0.0, maxlen = 100000, mid, len[10001];for(int i = 0; i < cables; ++i){cin >> len[i];
//        scanf("%lf", &len[i]);}while(maxlen - minlen > 1E-3){cable_we_get = 0;mid = minlen + (maxlen - minlen)/2;for(int i = 0; i < cables; ++i){cable_we_get += (int)(len[i]/mid);}if(cable_we_get >= target)minlen = mid;elsemaxlen = mid;}cout << fixed << setprecision(2) << floor(maxlen*100)/100.0 << endl;
//    printf("%.2lf\n", floor(maxlen*100)/100);
//  以上两种写法都可以AC,但是注意表达式内不要写mid,要写maxlen
//  最后如果是mid=1.999,保留两位,直接是1.99
//  maxlen是2.001,直接保留2.00return 0;
}

另一种解法:把数据都放大100倍,这样都是整型了

在这里插入图片描述

/*** @description: poj1064 数字放大100倍做法,输入浮点数分成整数部分和小数部分,避免1.50输入后变成1.4999999* @author: michael ming* @date: 2019/5/2 20:00* @modified by: */
#include <iostream>
using namespace std;
int main()
{int cables, target, cable_we_get;cin >> cables >> target;int minlen = 1, maxlen = 10000000, mid, len[10001], ans;int int_part, float_part;char ch;for(int i = 0; i < cables; ++i){cin >> int_part >> ch >> float_part;len[i] = int_part * 100 + float_part;}while(maxlen - minlen >= 0){cable_we_get = 0;mid = minlen + (maxlen - minlen)/2;for(int i = 0; i < cables; ++i){cable_we_get += len[i]/mid;}if(cable_we_get >= target)minlen = mid+1;elsemaxlen = mid-1;}cout << maxlen/100 << "." << (maxlen/10)%10 << maxlen%10 << endl;return 0;
}

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/480338.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

Learning to rank基本算法小结

原文链接&#xff1a;https://zhuanlan.zhihu.com/p/26539920 Learning to rank基本算法小结最近工作中需要调研一下搜索排序相关的方法&#xff0c;这里写一篇水文&#xff0c;总结一下几天下来的调研成果。包括Learning to rank 基本方法Learning to rank 指标介绍LambdaMART…

命名实体识别难在哪?

亚里士多德在《形而上学》中认为&#xff0c;对于存在&#xff0c;最重要的问题&#xff0c;就是给世间万物的存在基于语言来分层和分类。从神说要有光起&#xff0c;到基友给你取了个外号叫狗蛋。你会发现&#xff0c;创造与命名&#xff0c;在历史中往往等同。名字是自我概念…

论文浅尝 | 面向简单知识库问答的模式修正强化策略

链接&#xff1a;http://aclweb.org/anthology/C18-1277知识库问答研究旨在利用结构化事实回答自然语言问题&#xff0c;在网络中&#xff0c;简单问题占据了相当大的比例。本文提出在完成模式抽取和实体链接后&#xff0c;构建一个模式修正机制&#xff0c;从而缓解错误积累问…

最全BAT数据库面试89题:mysql、大数据、redis

数据库 mysql面试题目&#xff1a; MySQL InnoDB、Mysaim的特点&#xff1f; 乐观锁和悲观锁的区别&#xff1f;&#xff1f; 行锁和表锁的区别&#xff1f; 数据库隔离级别是什么&#xff1f;有什么作用&#xff1f; MySQL主备同步的基本原理。 如何优化数据库性能&#…

POJ 3481 Double Queue

题目链接&#xff1a;http://poj.org/problem?id3481 题目大意&#xff1a; 给你0-3四个指令&#xff1a; 0 退出 1 添加优先级为P 的 K值&#xff0c;进入队列 2 最高优先级出队 3 最低优先级出队 思路&#xff1a; 利用map数据对key默认升序排列。 AC代码如下&#xff…

理解 Word Embedding,全面拥抱 ELMO

原文链接&#xff1a;https://www.infoq.cn/article/B8-BMA1BUfuh5MxQ687T 理解 Word Embedding&#xff0c;全面拥抱 ELMO DataFun社区 阅读数&#xff1a;4238 2019 年 6 月 15 日提到 Word Embedding &#xff0c;如果你的脑海里面冒出来的是 Word2Vec &#xff0c;Glove &…

肝了1W字!文本生成评价指标的进化与推翻

一只小狐狸带你解锁 炼丹术&NLP 秘籍作者&#xff1a;林镇坤&#xff08;中山大学研一&#xff0c;对文本生成和猫感兴趣&#xff09;前言文本生成目前的一大瓶颈是如何客观&#xff0c;准确的评价机器生成文本的质量。一个好的评价指标&#xff08;或者设置合理的损失函数…

美团大脑 | 知识图谱的建模方法及其应用

本文转载自公众号: 美团技术团队.作为人工智能时代最重要的知识表示方式之一&#xff0c;知识图谱能够打破不同场景下的数据隔离&#xff0c;为搜索、推荐、问答、解释与决策等应用提供基础支撑。美团大脑围绕吃喝玩乐等多种场景&#xff0c;构建了生活娱乐领域超大规模的知识图…

最全Java面试208题,涵盖大厂必考范围!强烈建议收藏~

这些题目是去百度、小米、乐视、美团、58、猎豹、360、新浪、搜狐等一线互联网公司面试被问到的题目,熟悉本文中列出的知识点会大大增加通过前两轮技术面试的几率。 一.java基础面试知识点 java中和equals和hashCode的区别 int、char、long各占多少字节数 int与integer的区别…

大规模事理常识知识系统“学迹”的定位、应用与不足

我们于3月16正式对外发布了一个面向事理的实时学习和搜索系统Demo&#xff0c;取名叫“学迹”&#xff0c;取自“学事理&#xff0c;知行迹”(https://xueji.zhiwenben.com)。“学迹”的发布&#xff0c;进一步拓宽了现有知识库的门类&#xff0c;为进一步获取特定事件的概念解…

数据结构--散列表 Hash Table

文章目录1.线性探测 哈希表代码2.拉链法 哈希表代码1. 散列表用的是数组支持按照下标随机访问数据的特性&#xff0c;所以散列表其实就是数组的一种扩展&#xff0c;由数组演化而来。可以说&#xff0c;如果没有数组&#xff0c;就没有散列表。 2. 散列函数&#xff0c;设计的基…

论文浅尝 | 面向自动分类归纳的端到端强化学习

动机术语层次在许多自然语言处理任务中扮演着重要角色。然而&#xff0c;大部分现有的术语层次是人工构建的&#xff0c;其覆盖范围有限&#xff0c;或者某些领域上不可用。因此&#xff0c;最近的工作集中在自动化的术语层次归纳(automatictaxonomy induction)上。之前的研究工…

最新天猫Java面试题(含总结):线程池+并发编程+分布式设计+中间件

一面&#xff1a; HashMap实现原理&#xff0c;ConcurrentHashMap实现原理 红黑树&#xff0c;为什么允许局部不平衡 TCP&#xff0c;UDP区别&#xff0c;为什么可靠和不可靠 一次HTTP请求的全过程&#xff0c;包括域名解析、定位主机等 TCP三次握手 MySQL事务是什么&…

重磅!吴恩达家的NLP课程发布啦!

关注小夕并星标&#xff0c;解锁自然语言处理搜索、推荐与算法岗求职秘籍文 | 灵魂写手rumor酱美 | 人美心细小谨思密达斯坦福计算机系副教授、人工智能实验室主任、Coursera平台联合创始人、前百度首席科学家、机器学习入门必备网课CS229的主讲人——吴恩达Andrew Ng老师再放大…

情报领域因果推理智能项目概览:以DAPAR为例

美国国防高级研究计划局&#xff08;Defense Advanced Research Projects Agency&#xff09;&#xff0c;简称DARPA&#xff0c;提出了旨在从推进人工智能常识推理能力发展、深化机器学习理论研究和推进国防部复杂问题中应用人工智能、深化美军对人工智能的研究和应用的“的下…

论文浅尝 | 基于模式的时间表达式识别

本文转载自公众号:南大Websoft. 时间表达式识别是自然语言理解中一个重要而基础的任务。在以前的研究工作中&#xff0c;研究人员已经发现时间词的类型信息可以给识别提供明显的帮助。本文中我们以词类型序列作为表达式模式&#xff0c;提出了基于模式的时间表达式识别方法&…

大数据项目(四)————用户画像

原文地址&#xff1a;https://blog.csdn.net/Jorocco/article/details/81428996 1、用户画像概述 用来勾画用户&#xff08;用户背景、特征、性格标签、行为场景等&#xff09;和联系用户需求与产品设计的&#xff0c;旨在通过从海量用户行为数据中炼银挖金&#xff0c;尽可能…

最强阿里面试126题:数据结构+并发编程+Redis+设计模式+微服务

BAT技术面试范围 数据结构与算法&#xff1a;最常见的各种排序&#xff0c;最好能手写 Java高级&#xff1a;JVM内存结构、垃圾回收器、回收算法、GC、并发编程相关&#xff08;多线程、线程池等&#xff09;、NIO/BIO、各种集合类的比较优劣势&#xff08;底层数据结构也要…

AdaX:一个比Adam更优秀,带”长期记忆“的优化器

关注小夕并星标&#xff0c;解锁自然语言处理搜索、推荐与算法岗求职秘籍文 | 苏剑林&#xff08;追一科技&#xff0c;人称苏神&#xff09;美 | 人美心细小谨思密达前言这篇文章简单介绍一个叫做AdaX的优化器&#xff0c;来自《AdaX: Adaptive Gradient Descent with Exponen…

金融情报挖掘:面向公开文本的期货事件聚合与传导因素分析

金融情报挖掘是情报领域的一个重要分支&#xff0c;通过对金融领域信息进行提取和分析&#xff0c;发现关联线索&#xff0c;对传导关联进行建模&#xff0c;能够挖掘出市场变动的规律&#xff0c;最终辅助决策。 例如&#xff0c;国内外资本市场&#xff0c;衍生品市场热点不断…