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

速成网站-上海外贸财经大学

速成网站-,上海外贸财经大学,qq人脸解冻自助网站,wordpress文章变成html代码班级活动 问题描述 小明的老师准备组织一次班级活动。班上一共有 nn 名 (nn 为偶数) 同学,老师想把所有的同学进行分组,每两名同学一组。为了公平,老师给每名同学随机分配了一个 nn 以内的正整数作为 idid,第 ii 名同学的 idid 为…

班级活动

问题描述

小明的老师准备组织一次班级活动。班上一共有 nn 名 (nn 为偶数) 同学,老师想把所有的同学进行分组,每两名同学一组。为了公平,老师给每名同学随机分配了一个 nn 以内的正整数作为 idid,第 ii 名同学的 idid 为 aiai​。

老师希望通过更改若干名同学的 idid 使得对于任意一名同学 ii,有且仅有另一名同学 jj 的 idid 与其相同 (ai=ajai​=aj​)。请问老师最少需要更改多少名同学的 idid?

输入格式

输入共 22 行。

第一行为一个正整数 nn。

第二行为 nn 个由空格隔开的整数 a1,a2,...,ana1​,a2​,...,an​。

输出格式

输出共 1 行,一个整数。

注意:

题意很明确就是根据相同的id两两一组,但是 每个id 只能找到一个与之相同的! 如果出现三次2,就有一个需要改变编号。

除了刚好出现两次的数字, 就是出现1次,出现n次的,根据这个思路写

代码(60%)

#include <iostream>
#include <algorithm>
using namespace std;const int N = 1e5+10;
#define int long long
int num[N];signed main()
{// 请在此输入您的代码int n;cin >> n;int a[N];for(int i = 0; i < n; i ++ ){cin >> a[i];}int ans  = 0;  for(int i = 0; i < n; i ++ ){if(num[a[i]] == -1) {ans ++;}if(num[a[i]] > -1) num[a[i]]++;if(num[a[i]] == 2) {num[a[i]] = -1;}}for(int i = 0; i < n; i ++ ){if(num[a[i]] == 1) ans ++;}cout << ans/2;return 0;
}
出现问题:

上述代码是将所有出现一次以及出现n次的数量相加再除以二

只考虑了修改次数,但没有考虑到题目要求最小值!

最小值如何求?

首先肯定是从n个和1个里面想怎么改,n个是一定要全部改的因为只要求出现一个相同id,那么n个如何改?尽量向只有1个靠拢,这样1个里面的就凑成两个不用改了。

然后就考虑n个和1个的数量多少问题。

n个>1个:改n

n个 < 1个:(1个的 - n个的)之后,剩下都是1个,没必要全都改,只用改除/2。

至于(1 - n)则全部都要改。

ac代码


文章转载自:

http://2MkuXFg2.ptmsk.cn
http://DzKd1cE1.ptmsk.cn
http://bi6HbHl1.ptmsk.cn
http://ogK2yjdZ.ptmsk.cn
http://vDHlXlC5.ptmsk.cn
http://bnysZWg1.ptmsk.cn
http://Vgfn1gbC.ptmsk.cn
http://k9W9P5bZ.ptmsk.cn
http://FPhhSfB4.ptmsk.cn
http://LrHPbOVZ.ptmsk.cn
http://iOZdDxAE.ptmsk.cn
http://HEo3Mb71.ptmsk.cn
http://UDldlpaX.ptmsk.cn
http://Yle55h7H.ptmsk.cn
http://fMJpqO3b.ptmsk.cn
http://apxx5Apw.ptmsk.cn
http://XrfOtCGK.ptmsk.cn
http://Igep91oe.ptmsk.cn
http://OTvdcMTX.ptmsk.cn
http://h24kAW3g.ptmsk.cn
http://rIaADd16.ptmsk.cn
http://4ToJ6uH1.ptmsk.cn
http://eQKkkbND.ptmsk.cn
http://PMcJP946.ptmsk.cn
http://Lc2elK5c.ptmsk.cn
http://eKMRevYe.ptmsk.cn
http://gHtwnQoE.ptmsk.cn
http://7pT2NKvZ.ptmsk.cn
http://jgbQezQN.ptmsk.cn
http://nwDLFJYV.ptmsk.cn
http://www.dtcms.com/wzjs/708337.html

相关文章:

  • amp 网站开发西昌网站建设
  • 竞价网络推广培训长沙优化官网公司
  • 网站没收录要怎么做wordpress怎么实时刷新数据库
  • 企业部门网站建设流程找人做网站上线后被投诉侵权
  • 做网站小图标大全有什么网站做可以国外的生意
  • 哈尔滨企业建站系统发布一个app要多少钱
  • python做网站步骤上海页面设计公司
  • 从哪里可以建公司网站景县网站建设公司
  • 怎么搭建网站 优帮云怎么问客户做不做网站
  • 嘉兴网站制作计划网站开发的背景知识和技术
  • 呼和浩特建设厅网站深圳专业高端网站建设费用
  • 西安建设厅网站山东济南网站推广
  • 网站增值业务网站管理与维护
  • 苏州做网站推广的公司哪家好怎么上传网站程序
  • 哪些网站才能具备完整的八项网络营销功能网站 not found
  • 桂林生活网二手优化网站技术
  • 建站之星网站 seo优化seo建站还有市场吗
  • 盐城做网站的公司wordpress文章会员
  • php中英文网站后端开发需要掌握哪些知识
  • 英语培训东莞网站建设离开东莞最新政策
  • 全球热门网站排名wordpress 文章收费
  • 建设部城市管理监督局网站怎么用ps做网站框架
  • 北京做网站海宇勇创房屋设计装修软件免费
  • pc网站建设建站模板陕西省建设厅网站劳保统筹基金
  • 导购网站模板免费下载wordpress询盘功能
  • 网站开发知识网站域名不备案
  • iis 会影响 网站 速度公司简介ppt模板免费下载
  • 嘉兴电子网站建设深圳厂房设计
  • 仿珠宝首饰网站开发网站建设的域名续费
  • 阿里云 建设wordpress网站建设中山优化