全文预览已结束
下载本文档
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
活动园地NOIP2014复赛普及组第一题题解原题一、 题目简化:求N个正数中有多少个数是这些数中其它两个数的和。3=N=100; 每个正整数M:1=M=10000;二、 过程分析:试题显然可以分成三个步骤求解:1、先求出N个数中每两个数的和;2、判断这些和中有没有重复,重复的数只留下一个;3、N个数中的每一个数都与这些和比较,若相等些记下,比较完成,即得其解。三、 算法与策略:三个步骤都采用一一列举所有可能的方法,是典型的枚举。四、 程序设计思路:1、一维数组A存放N个数,一维数组B存放两两相加的和;求和、判断重复、比较两数是否相等,都采用两重循环,i 控制外循环,j 控制内循环,k表示数组B的下标变化,ans表示题目答案。数组a最多100个元素,考虑到用循环,为防止下标越界,可适当把数组开大一些,a0.101;数组b中元素数是N个数两个数两两相加的和的个数,由于N最大是100,所以和的个数最多是1+2+3+994950个,则b0.5000五、程序设计:program count; var a:array0.101 of longint; b:array0.5000 of longint; n,ans,i,j,k:longint; begin assign(input,count.in); reset(input); assign(output,count.out); rewrite(output); readln(n); for i:=1 to n do read(ai); fillchar(b,sizeof(b),0); *下面开始步骤1:a中的数两两相加放在b中* k:=1; for i:=1 to n-1 do for j:=i+1 to n do begin bk:=ai+aj; inc(k); end; *下面开始步骤2:筛掉b中的重复数据:* for i:= 1 to (k-1)-1 do for j:=i+1 to k-1 do begin if bi:=bj then bj:=0; end; *下面开始步骤3:比较a数组中有多少个数与b数组中的数相等:* ans:=0; for i:=1 to n do for j:=1 to k-1 do begin if (ai=bj) then inc(ans); end; *比较结束,结果已得出,下面输出结果,关闭文件,结束程序* write(ans); close(input) close(output); end.六、时间复杂度分析:三个步骤采用了三个双重循环,每个双重循环运行约N 次,若N100,则整个程序运行约150万次操作,T(N)0(N3)理论上讲,还可以忍受。第二步的任务是排除B中的重复数值,以免第三步统计时重复计算,使结果不正确。从原题提供的数据来看,N个正整数中每个都不超过10000,这就是说,B中的最大数值就是20000,开一个1.20000的数组,A中两个数的和等于几,就把这个数放在B中的第几个位置上,即:让B数组的下标跟A中这两个数的和相同。写到这里,如果你还不明白,那,那算我没说明白,举个粟子捋一捋:3+58,则B8:8;1500+10002500 则这个结果放在B2500中,即:B2500:2500;问:如果有2+68,这个结果放在哪里?这样处理,B数组中还有重复数据吗?答案是:肯
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 中国建设银行建信财产保险有限公司2026年度校园招聘20人备考题库含答案详解(预热题)
- 2025年南昌市消防救援支队水上大队招聘勤务及宣传勤务文员3人备考题库附答案详解(轻巧夺冠)
- 2026厦门国际银行秋季校园招聘备考题库及一套完整答案详解
- 湖南银行2026届全球校园招聘备考题库带答案详解(完整版)
- 2025广东中山市三工联动职工服务中心招聘10人备考题库有答案详解
- 2025广东惠州市惠阳区乡镇(街道)专职安全生产监督检查员招聘1人备考题库及答案详解(考点梳理)
- 2025云和农商银行秋季新员工招聘备考题库含答案详解(巩固)
- 2026中国建设银行四川省分行校园招聘530人备考题库附答案详解(完整版)
- 2025黑龙江黑河嫩江市公开招聘社保协理员22人备考题库及答案详解一套
- 2025年河北保定涿州市社区工作者公开招聘96名备考题库附答案详解(典型题)
- 2025国家应急管理部所属单位第二批次招聘1人模拟试卷及一套参考答案详解
- 2025年秋统编版(2024)小学语文三年级上册第五单元模拟测试卷及答案
- 钢结构防火涂料应用技术规程TCECS 24-2020
- 2025年中国工业级小苏打行业市场分析及投资价值评估前景预测报告
- 2025年共青团团课考试题库(含答案)
- HPV疫苗知识培训课件
- TGXAS-药膳餐厅建设管理规范编制说明
- 精益8大浪费课件
- 太赫兹介质波导研究-洞察及研究
- 医药KA经理工作总结
- 冷链物流仓库设计方案
评论
0/150
提交评论