社交网络中我们给每个人定义了一个“活跃度”,现希望根据这个指标把人群分为两大类,即外向型(outgoing,即活跃度高的)和内向型(introverted,即活跃度低的)。要求两类人群的规模尽可能接近,而他们的总活跃度差距尽可能拉开。

输入格式:

输入第一行给出一个正整数N(2≤N≤10​5​​)。随后一行给出N个正整数,分别是每个人的活跃度,其间以空格分隔。题目保证这些数字以及它们的和都不会超过2​31​​。

输出格式:

按下列格式输出:

Outgoing #: N1
Introverted #: N2
Diff = N3

其中N1是外向型人的个数;N2是内向型人的个数;N3是两群人总活跃度之差的绝对值。

输入样例1:

10
23 8 10 99 46 2333 46 1 666 555

输出样例1:

Outgoing #: 5
Introverted #: 5
Diff = 3611

输入样例2:

13
110 79 218 69 3721 100 29 135 2 6 13 5188 85

输出样例2:

Outgoing #: 7
Introverted #: 6
Diff = 9359

解题思路:

①将人的活跃度放进数组中,然后用sort排下顺序;

②如果人数是奇数,假定为m,分成两组,第一组人数m/2,第二组人数m-m/2;

③然后分组进行求和,之后在做差。

#include<bits/stdc++.h>
using namespace std;
int a[100010];
int main(){int n;cin>>n;for(int i=0;i<n;i++){cin>>a[i];} sort(a,a+n);int m,sum1=0,sum2=0,j;if(n%2==0) m=n/2;if(n%2!=0) m=n/2+1; for(j=0;j<n-m;j++){//将0到(n-m)的活跃度相加sum1+=a[j];}for(j=n-m;j<n;j++){sum2+=a[j];}cout<<"Outgoing #: "<<m<<endl;cout<<"Introverted #: "<<n-m<<endl;cout<<"Diff = "<<abs(sum2-sum1);return 0;
}

PTA---人以群分相关推荐

  1. PTA:7-12 人以群分(C语言)

    社交网络中我们给每个人定义了一个"活跃度",现希望根据这个指标把人群分为两大类,即外向型(outgoing,即活跃度高的)和内向型(introverted,即活跃度低的).要求两类 ...

  2. CCCC 天梯赛 PTA ZOJ 题目 L1 L2 L3

    PTA 天梯赛题目整理 L2 难点 **L2-001 紧急救援** **L2-002 链表去重** **L2-003 月饼** **L2-004 这是二叉搜索树吗** **L2-005 集合相似度** ...

  3. PTA|团体程序设计天梯赛-练习题库集

    文章目录 关于爬取脚本的编写 L1-001 Hello World! (5 分) L1-002 打印沙漏 (15 分) L1-003 个位数统计 (15 分) L1-004 计算摄氏温度 (5 分) ...

  4. 【PTA-训练day5】L2-017 人以群分 + L1-023 输出GPLT

    目录 L2-017 人以群分 - 简单排序 1.java - 喜闻乐见运行超时 2.c++ L1-023 输出GPLT - 20 1.java - 最后一个点喜闻乐见超时 2.c++ L1-019 谁 ...

  5. C语言 之 PTA乙级错误集锦

    1,很大很大的数输入,并各位加和  PTA-1001 #include <stdio.h> #include <math.h> int main(){int sum=0,cou ...

  6. PTA数据结构与算法题目集6-4 6-3 6-8

    PTA数据结构与算法题目集(中文) 6-4 链式表的按序号查找 ElementType FindKth( List L, int K ){int index = 0;while(L){++index; ...

  7. PTA数据结构与算法题目集 6-9 二叉树的遍历

    PTA数据结构与算法题目集(中文) 6-9 二叉树的遍历 void InorderTraversal( BinTree BT ){if(BT==NULL)return;if(BT->Left){ ...

  8. PTA 家庭房产 (图论,暴搜)

    PTA 家庭房产 (图论,暴搜) 题目详情: 给定每个人的家庭成员和其自己名下的房产,请你统计出每个家庭的人口数.人均房产面积及房产套数. 输入格式: 输入第一行给出一个正整数N(≤1000),随后N ...

  9. PTA—输出全排列 (20分) 递归回溯思想

    PTA-输出全排列 (20分) 递归回溯思想 题目要求: 请编写程序输出前n个正整数的全排列(n<10),并通过9个测试用例(即n从1到9)观察n逐步增大时程序的运行时间. 输入格式: 输入给出 ...

  10. PTA 基础编程题目集 6-6 求单链表结点的阶乘和

    PTA 基础编程题目集 6-6 求单链表结点的阶乘和 本题要求实现一个函数,求单链表L结点的阶乘和.这里默认所有结点的值非负,且题目保证结果在int范围内. 函数接口定义: int Factorial ...

最新文章

  1. 3D Robotics转型新动作,将为亚特兰大机场提供站点扫描服务
  2. 如何调整Loadrunner中Vuser的数量限制
  3. C语言循环不执行语句,求大神来看一下 为什么for循环中scanf语句不执行?
  4. Wget用法、参数解释的比较好的一个文章
  5. 全面支持开源,微软加速 Visual Studio 和 Azure DevOps 云升级
  6. 前端学习(1341):mongoose验证规则延伸
  7. color a dir/s_发布十个月后,依然是一个残品——小米手表COLOR深度体验
  8. Struts1.x系列教程(17):使用IncludeAction和ForwardAction类包含和转入Web资源
  9. composer 更新php位置,使用composer安装/更新PHP包
  10. 视频教程-Excel函数教程(下)-Office/WPS
  11. 【科普】码农是程序员吗?码农与真正程序员的区别是啥?
  12. 无法听到计算机发出的声音怎么办,为什么视频对方听不到我说话_电脑视频对方听不到声音的解决方法...
  13. 【Python基础 | 文件】小实验:将古诗写入一个文件,并复制到另一个文件中
  14. python——基础应用:顺丰快递分拣小程序的实现
  15. unicode 的geek解释
  16. 小程序云开发登陆流程
  17. 加速C++程序编译的方法
  18. 石墨烯之父”、诺贝尔物理学奖得主:造访江西理工大学
  19. [xueqi]ISCC 2019 writeup 信息安全与对抗-解题思路xueqi
  20. shell用for循环编辑显示形状格式(99乘法表,三角,梯形,平行四边形,菱形等)

热门文章

  1. 大数据分析建模思路技巧和算法的特征
  2. Google IO 16 / Mobile Web 笔记
  3. 使用adb命令给安卓手机安装apk包
  4. Li‘s 影像组学视频学习笔记(16)-pyradiomics里的yaml文件
  5. 对抗生成网络GAN(优化目标篇)
  6. C#实现无物理边距 可打印区域的绘图\打印 z
  7. 华为nova3超级慢动作酷玩抖音,没有办法我就是这么强大
  8. 【Linux】Ubuntu kill 杀死进程详解
  9. Linux下的Tomcat调优
  10. java四舍五入_Java几种常见的四舍五入的方法