首届CCF真题1-相反数

问题描述

有 N 个非零且各不相同的整数。请你编一个程序求出它们中有多少对 相反数(a 和 −a 为一对相反数)。

输入格式

第一行包含一个正整数 N。(1 ≤ N ≤ 500)。
第二行为 N 个用单个空格隔开的非零整数,每个数的绝对值不超过
1 000,保证这些整数各不相同。

输出格式

只输出一个整数,即这 N 个数中包含多少对相反数。

输入样例

5
1 2 3 -1 -2

输出样例

 1 #include <iostream>
 2 #include <map>
 3
 4 using namespace std;
 5
 6 int main() {
 7     map<int,int> j;
 8     int n;
 9     cin>>n;
10     int ans=0;
11     for(int i=0;i<n;i++)
12     {
13         int num=0;
14         cin>>num;
15         num = abs(num);
16         j[num]++;
17         if(j[num]>1)
18             ans++;
19     }
20     cout<<ans<<endl;
21     return 0;
22 }
时间: 2024-08-09 21:42:49

首届CCF真题1-相反数的相关文章

首届CCF真题2-窗口

问题描述 在某图形操作系统中,有 N 个窗口,每个窗口都是一个两边与坐标轴 分别平行的矩形区域.窗口的边界上的点也属于该窗口.窗口之间有层次 的区别,在多于一个窗口重叠的区域里,只会显示位于顶层的窗口里的内 容. 当你点击屏幕上一个点的时候,你就选择了处于被点击位置的最顶层 窗口,并且这个窗口就会被移到所有窗口的最顶层,而剩余的窗口的层次 顺序不变.如果你点击的位置不属于任何窗口,则系统会忽略你这次点击. 现在我们希望你写一个程序模拟点击窗口的过程. 输入格式 输入的第一行有两个正整数,即 N

首届CCF真题3-命令行选项

问题描述 请你写一个命令行分析程序,用以分析给定的命令行里包含哪些选项.每个命令行由若干个字符串组成,它们之间恰好由一个空格分隔.这些字 符串中的第一个为该命令行工具的名字,由小写字母组成,你的程序不用 对它进行处理.在工具名字之后可能会包含若干选项,然后可能会包含一些不是选项的参数. 选项有两类:带参数的选项和不带参数的选项.一个合法的无参数选项的形式是一个减号后面跟单个小写字母,如"-a" 或"-b".而带参数 选项则由两个由空格分隔的字符串构成,前者的格式要求

首届CCF真题5-任务调度

问题描述 有若干个任务需要在一台机器上运行.它们之间没有依赖关系,因此 可以被按照任意顺序执行. 该机器有两个 CPU 和一个 GPU.对于每个任务,你可以为它分配不 同的硬件资源: 1. 在单个 CPU 上运行. 2. 在两个 CPU 上同时运行. 3. 在单个 CPU 和 GPU 上同时运行. 4. 在两个 CPU 和 GPU 上同时运行. 一个任务开始执行以后,将会独占它所用到的所有硬件资源,不得中 断,直到执行结束为止.第 i 个任务用单个 CPU,两个 CPU,单个 CPU 加 GPU

首届CCF真题4-无线网络

问题描述 目前在一个很大的平面房间里有 n 个无线路由器,每个无线路由器都 固定在某个点上.任何两个无线路由器只要距离不超过 r 就能互相建立网 络连接. 除此以外,另有 m 个可以摆放无线路由器的位置.你可以在这些位置 中选择至多 k 个增设新的路由器. 你的目标是使得第 1 个路由器和第 2 个路由器之间的网络连接经过尽 量少的中转路由器.请问在最优方案下中转路由器的最少个数是多少? 输入格式 第一行包含四个正整数 n,m,k,r.(2 ≤ n ≤ 100,1 ≤ k ≤ m ≤ 100,

14年12月CCF真题1-门禁系统

问题描述 涛涛最近要负责图书馆的管理工作,需要记录下每天读者的到访情况.每 位读者有一个编号,每条记录用读者的编号来表示.给出读者的来访记录,请 问每一条记录中的读者是第几次出现. 输入格式 输入的第一行包含一个整数n,表示涛涛的记录条数. 第二行包含n个整数,依次表示涛涛的记录中每位读者的编号. 输出格式 输出一行,包含n个整数,由空格分隔,依次表示每条记录中的读者编号 是第几次出现. 输入样例 5 12113 输出样例 11231 评测用例规模与约定 1≤n≤1,000,读者的编号为不超过

CCF真题之最优灌溉

201412-4 问题描述 雷雷承包了很多片麦田,为了灌溉这些麦田,雷雷在第一个麦田挖了一口很深的水井,所有的麦田都从这口井来引水灌溉. 为了灌溉,雷雷需要建立一些水渠,以连接水井和麦田,雷雷也可以利用部分麦田作为“中转站”,利用水渠连接不同的麦田,这样只要一片麦田能被灌溉,则与其连接的麦田也能被灌溉. 现在雷雷知道哪些麦田之间可以建设水渠和建设每个水渠所需要的费用(注意不是所有麦田之间都可以建立水渠).请问灌溉所有麦田最少需要多少费用来修建水渠. 输入格式 输入的第一行包含两个正整数n, m,

给定n个不同的整数,问这些数中有多少对整数,它们的值正好相差1(ccf真题)

ccf认证考试2014年9月第一题 问题描述 给定n个不同的整数,问这些数中有多少对整数,它们的值正好相差1. 输入格式 输入的第一行包含一个整数n,表示给定整数的个数. 第二行包含所给定的n个整数. 输出格式 输出一个整数,表示值正好相差1的数对的个数. 样例输入 6 10 2 6 3 7 8 样例输出 3 样例说明 值正好相差1的数对包括(2, 3), (6, 7), (7, 8). 评测用例规模与约定 1<=n<=1000,给定的整数为不超过10000的非负整数. #include<

图像旋转(ccf真题)

ccf认证2015年3月第一题 问题描述 旋转是图像处理的基本操作,在这个问题中,你需要将一个图像逆时针旋转90度. 计算机中的图像表示可以用一个矩阵来表示,为了旋转一个图像,只需要将对应的矩阵旋转即可. 输入格式 输入的第一行包含两个整数n, m,分别表示图像矩阵的行数和列数. 接下来n行每行包含m个整数,表示输入的图像. 输出格式 输出m行,每行包含n个整数,表示原始矩阵逆时针旋转90度后的矩阵. 样例输入 2 3 1 5 3 3 2 4 样例输出 3 4 5 2 1 3 评测用例规模与约定

14年12月CCF真题5-货物调度

问题描述 某公司要处理一个周期性的物流问题. 有n个城市,第i个城市在每周的第j(1≤j≤7) 天会生产aij吨某种货物,同时 需要消耗bij吨该种货物.已知每周的产量等于消耗量(即aij之和等于bij之和). 城市之间有m条道路,第k条道路连接了城市sk和tk.一条道路上运输1吨 货物有一个固定的成本ck.道路都可以双向使用.每天运输的货物量没有限制.城市之间的距离并不远,货物可以从任意一个城市运输到任意另一个城市并且在当天到达. 货物如果在当天没有被消耗掉,就需要存放在仓库里过夜.第i个城市