博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
noip2014普及组——珠心算测验
阅读量:5239 次
发布时间:2019-06-14

本文共 1302 字,大约阅读时间需要 4 分钟。

题目描述

    珠心算是一种通过在脑中模拟算盘变化来完成快速运算的一种计算技术。珠心算训练,既能够开发智力,又能够为日常生活带来很多便利,因而在很多学校得到普及。
    某学校的珠心算老师采用一种快速考察珠心算加法能力的测验方法。他随机生成一个正整数集合,集合中的数各不相同,然后要求学生回答:其中有多少个数,恰好等于集合中另外两个(不同的)数之和?
    最近老师出了一些测验题,请你帮忙求出答案。

输入格式:

输入共两行,第一行包含一个整数n,表示测试题中给出的正整数个数。

第二行有n个正整数,每两个正整数之间用一个空格隔开,表示测试题中给出的正整数。

输出格式:
输出共一行,包含一个整数,表示测验题答案。

输入输出样例

样例测试点#1

输入样例:
4
1 2 3 4
输出样例:
2

说明

【样例说明】

由1+2=3,1+3=4,故满足测试要求的答案为2。注意,加数和被加数必须是集合中的两个不同的数。

【数据说明】

对于100%的数据,3 ≤ n ≤ 100,测验题给出的正整数大小不超过10,000。

解决思路:

这个题目有个比较容易出错的陷阱:题目是要判断每一个数是否能由另外两个相加构成,而不是要判断任意两个数相加的结果是否等于数组当中的某一个值。(嗯这个话说出来差不多一个样但是意思却不一样,写代码的时候循环的顺序也不一样。)

这个题目数据量比较小O(n^3)算法也还能承受,但是要注意去重。

1 #include
2 #include
3 int cmp(const void *a,const void *b); 4 int main() 5 { 6 int n,i,a[103]={
0}; 7 int ans=0; 8 int j,k,flag; 9 10 scanf("%d",&n);11 for(i=0;i
View Code

 

下面是带有条件编译的代码:

1 #include
2 #include
3 #include
4 5 #define localCompile 0 6 7 int cmp(const void *a,const void *b); 8 int main() 9 {10 int n,i,a[103]={
0};11 int ans=0;12 int j,k,flag;13 14 scanf("%d",&n);15 #ifdef localCompile16 srand((unsigned)time(0));17 #endif18 for(i=0;i
View Code

 

转载于:https://www.cnblogs.com/huashanqingzhu/p/4089180.html

你可能感兴趣的文章
严重: 文档无效: 找不到语法。 at (null:2:19)
查看>>
tomcat7的数据库连接池tomcatjdbc的25个优势
查看>>
Html 小插件5 百度搜索代码2
查看>>
nodejs-Path模块
查看>>
P1107 最大整数
查看>>
EasyDarwin开源手机直播方案:EasyPusher手机直播推送,EasyDarwin流媒体服务器,EasyPlayer手机播放器...
查看>>
监控CPU和内存的使用
查看>>
Ubuntu14.04设置开机自启动程序
查看>>
ios app 单元测试 自动化测试
查看>>
强连通tarjan模版
查看>>
javascript_09-数组
查看>>
多进程与多线程的区别
查看>>
PAT 1145 1078| hashing哈希表 平方探测法
查看>>
Ubuntu(虚拟机)下安装Qt5.5.1
查看>>
Linux第七周学习总结——可执行程序的装载
查看>>
java.io.IOException: read failed, socket might closed or timeout, read ret: -1
查看>>
细说php(二) 变量和常量
查看>>
iOS开发网络篇之Web Service和XML数据解析
查看>>
个人寒假作业项目《印象笔记》第一天
查看>>
java 常用命令
查看>>