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

建设局网站安全自查情况报告建设厅网站装修合同模板

建设局网站安全自查情况报告,建设厅网站装修合同模板,青岛做网站建公司,定制v目录 题目部分 解读与分析 代码实现 题目部分 题目分积木难度难题目说明Solo和koko是两兄弟#xff0c;妈妈给了他们一大堆积木#xff0c;每块积木上都有自己的重量。现在他们想要将这些积木分成两堆。哥哥Solo负责分配#xff0c;弟弟koko要求两个人获得的积木总重量“…目录 题目部分 解读与分析 代码实现 题目部分 题目分积木难度难题目说明Solo和koko是两兄弟妈妈给了他们一大堆积木每块积木上都有自己的重量。现在他们想要将这些积木分成两堆。哥哥Solo负责分配弟弟koko要求两个人获得的积木总重量“相等”根据Koko的逻辑个数可以不同不然就会哭但koko只会先将两个数转成二进制再进行加法而且总会忘记进位每个进位都忘记。如当2511101加111011时koko得到的计算结果是1810010    11001 01011 -------------       10010 Solo想要尽可能使自己得到的积木总重量最大且不让koko哭。输入描述3 3 5 6 第一行是一个整数N( 2≤ N ≤100 )表示有多少块积木第二行为空格分开的N个整数Ci(1 ≤ Ci ≤)表示第i块积木的重量。输出描述11 让koko不哭输出Solo所能获得积木的最大总重量否则输出“-1”。补充说明如果能让koko不哭输出Solo所能获得的积木的总重量否则输出-1。 该样例输出为 11 。解释Solo 能获得重量为 5 和 6 的两块积木5 转换成二进制是 101 6 的二进制是 110按照 kolo 的计算方法忘记进位结果为 3二进制 011。kolo 获得重量为 3 的积木而 solo 获得重量为 11十进制5 6的积木。------------------------------------------------------示例示例1输入3输出3 5 6说明11 解读与分析 题目解读 此题要求从一堆数字中把它们分成 2 份按照加法不进位的方式使这两份之和“相等”。在“相等”的前提下输出实际总和较大的那个数字。 如果任何分法都不能保证“相等”则输出 -1。 分析与思路 做加法不进位0 0 0 0 1 1 1 1 0。实际上这就是数字异或XOR。 原题中要求按照异或的方式分成两“等份”那这两等分异或之后最终的结果为 0。由于异或的结果与顺序无关即这一堆数字无论怎么改变顺序最后异或的结果一定是 0 。既然要求两份中其中一份的数字最大可以把最小的数字作为一份其他所有的数字作为一份。最终所有数字之和减去最小的数字即为输出结果。 如果所有数字的异或结果不为 0则输出 -1。 那我们的思路就变得很简单了申明 3 个变量 1. xorValue整形数字初始值为0记录所有数字的异或值。 2. sum整形数字初始值为0记录所有数字之和。 3. minValue整形数字初始值为整形数字的最大值记录所有数字中的最小值。 遍历所有的数字设当前正在遍历的数字为 curValue进行如下操作 1. 把 xorValue 与 curValue 异或把结果赋值给 xorValue 2. 把 curValue 的值加到 sum中 3. 判断 curValue 与 minValue 的大小如果 curValue 更小把它赋值给 minValue。 遍历完所有数字后如果 ·  xorValue 不等于 0 输出 -1。 ·  xorValue 等于 0输出 ( sum - minValue )。 此题只需要遍历一次数字使用了 3 个整形变量时间复杂度为 O(n)空间复杂度为 O(1)。 代码实现 Java代码 import java.util.Scanner;/*** 分积木* since 2023.09.14* version 0.1* author Frank**/ public class BlockDivision {public static void main(String[] args) {Scanner sc new Scanner(System.in);while (sc.hasNext()) {String input sc.nextLine();int count Integer.parseInt( input );input sc.nextLine();String[] numbers input.split( );// 此处 count numbers.count可以完全不用考虑 count.processBlockDivision( numbers );}}private static void processBlockDivision( String numbers[] ){int xorValue 0;int sum 0;int minValue Integer.MAX_VALUE;for( int i 0; i numbers.length; i ){int curValue Integer.parseInt( numbers[i] );xorValue ^ curValue;sum curValue;if( curValue minValue ){minValue curValue;}}if( xorValue ! 0 ){System.out.println( -1 );}else{System.out.println( sum - minValue );}}} JavaScript代码 const rl require(readline).createInterface({ input: process.stdin }); var iter rl[Symbol.asyncIterator](); const readline async () (await iter.next()).value; void async function() {while (line await readline()) {// count 可以忽略var count parseInt(line);line await readline();var numberArr line.split( );processBlockDivision(numberArr);} }();function processBlockDivision( numbers ) {var xorValue 0;var sum 0;var minValue Number.MAX_VALUE;for (var i 0; i numbers.length; i) {var curValue parseInt(numbers[i]);xorValue ^ curValue;sum curValue;if (curValue minValue) {minValue curValue;}}if (xorValue ! 0) {console.log(-1);} else {console.log(sum - minValue);} } (完)
http://www.yutouwan.com/news/172120/

相关文章:

  • 网站内容的建设做表格的网站
  • 网站制作内联框windows优化大师官网
  • 坂田做网站建设好的网络公司什么营销软件好用
  • 找做网站找那个平台做ppt在线制作免费
  • 东莞营销网站建设多少钱免费网站有哪些
  • 龙岩智能微站创建网页的方法
  • 哪个网站有免费的模板汕头百姓网二手摩托车
  • html 创意网站吉林电商的网络推广
  • 网站建设公司话术企业网站排名技巧
  • 呼和浩特建设厅官方网站郑州站
  • 公司的网站建设费进入什么科目建站之星做的网站如何导出
  • 外贸网站收录工具温江网站建设
  • 公司注销 网站备案苏州工业园区做政务网站的公司
  • 网站制作长春免费seo网站推荐一下
  • 义乌 网站 制作如何做网站的软件
  • 网站首页排名下降付第三期网站建设费的账务处理
  • 睢宁网站建设xzqjwl工程承包合同范本免费
  • 怎么开自己的网站铁岭做网站的
  • 如何做网站手机外包公司属于什么行业
  • 手机商城网站制作公司做设计需要素材的常用网站有哪些
  • 旅游电子商务网站排名室内设计效果图手绘图片大全
  • 南通网站建设机构最炫的网站
  • 旅行社网站的建设开题报告牡丹江建设工程信息网站
  • 做百度移动端网站排名软件怎么写软文推广
  • 阿里网站建设工具大连工商网站查询企业信息
  • 门户网站运营是什么注册安全工程师难吗
  • 企业网站宽度给多少网站建设管理教程视频教程
  • 网站推广的技巧和方法wordpress转载文章
  • 网站集约化建设实施方案三台县城乡建设网网站
  • 网站建设主要包括哪两个方面优化关键词的作用