牛客小白月赛17 A 小sun的假期
题意已经很明显了,但是我首先是用暴力方法先把数字离散,再用离散后的值当下标来存这个数字出现了几次
1 #include<stdio.h> 2 #include<string.h> 3 #include<iostream> 4 #include<algorithm> 5 #include<map> 6 using namespace std; 7 const int maxn=10000000; 8 map<int,int>r; 9 int main() 10 { 11 //printf("%d\n",0^1^2^3); 12 int n,sum,a; 13 sum=0; 14 scanf("%d",&n); 15 for(int i=1;i<=n;++i) 16 { 17 scanf("%d",&a); 18 r[a]++; 19 //printf("%d\n",r[a]); 20 if(r[a]%2) 21 sum^=a; 22 else if((r[a]-1)!=0) 23 sum^=a; 24 } 25 printf("%d\n",sum); 26 return 0; 27 }
View Code
但是却内存超限
然后我又对所有数字排序,这样就不用存起来,因为排完序后,一样的数字在一起
1 #include<stdio.h> 2 #include<string.h> 3 #include<iostream> 4 #include<algorithm> 5 #include<map> 6 using namespace std; 7 typedef long long ll; 8 const int maxn=10000005; 9 int v[maxn]; 10 int main() 11 { 12 int n,sum=0; 13 scanf("%d",&n); 14 for(int i=1; i<=n; ++i) 15 { 16 scanf("%d",&v[i]); 17 } 18 //sort(v+1,v+1+n); 19 int ci=0; 20 v[0]=0; 21 for(int i=1; i<=n; ++i) 22 { 23 if(v[i]!=v[i-1]) 24 { 25 if(ci!=0 && ci%2) 26 sum^=v[i-1]; 27 ci=1; 28 } 29 else ci++; 30 } 31 //printf("%d\n",ci); 32 if(ci!=0 && ci%2) 33 sum^=v[n]; 34 printf("%d\n",sum); 35 return 0; 36 }
View Code
但是又内存超限
我又把sort排序去掉,试着试了一把结果还过了(一脸懵!)
1 #include<stdio.h> 2 #include<string.h> 3 #include<iostream> 4 #include<algorithm> 5 #include<map> 6 using namespace std; 7 typedef long long ll; 8 const int maxn=10000005; 9 int main() 10 { 11 int n,sum=0,a1,a2,b; 12 scanf("%d",&n); 13 scanf("%d",&a1); 14 b=1; 15 for(int i=2; i<=n; ++i) 16 { 17 scanf("%d",&a2); 18 if(a1==a2) ++b; 19 else 20 { 21 if(b!=0 && b%2) sum^=a1; 22 b=1; 23 a1=a2; 24 } 25 } 26 if(b!=0 && b%2) sum^=a1; 27 printf("%d\n",sum); 28 return 0; 29 }
View Code
比赛完之后,听他们说这一道题只需要把全部输入的数据都异或一遍就可以了,因为如果某个数字出现偶数次,那么也会异或偶数次,我们知道一个数字异或偶数次相当于没有异或。那么正好符合题意!
这个代码就不给了
这个时候我就在想了,为什么我那个不加sort就可以过,也是同样的原理
像这样的数据1 2 3 3 2 4 6 4
我的代码没有异或3,但是异或了2,但是却异或了两遍2.所以还是相当于没有异或
转载于:https://www.cnblogs.com/kongbursi-2292702937/p/11518877.html
牛客小白月赛17 A 小sun的假期相关推荐
- 牛客小白月赛17 F小黄鸭(计算几何+积分+二分)
链接:https://ac.nowcoder.com/acm/contest/1085/F 来源:牛客网 题目描述 小sun的寝室有一只小黄鸭,小黄鸭浮在水面上的样子特别可爱,现在小sun有一个问题: ...
- 牛客小白月赛17 F小黄鸭(计算几何+积分+二分)
题目链接:https://ac.nowcoder.com/acm/contest/1085/F 题解: 根据,,可得① 球的正视图是个圆心为(0,r),半径为r的圆,方程为② 侵入水中的体积: 体积公 ...
- 牛客小白月赛2 B.小马过河
牛客小白月赛2 B.小马过河 题目链接 题目描述 E t e ˊ r e o \mathrm{Et\acute{e}reo} Eteˊreo 开始涉猎几何领域了.他现在正在研究小马喝水问题. 众所周知 ...
- 牛客小白月赛16——D 小阳买水果
链接:https://ac.nowcoder.com/acm/contest/949/D 来源:牛客网 时间限制:C/C++ 1秒,其他语言2秒 空间限制:C/C++ 262144K,其他语言5242 ...
- 牛客小白月赛16 小石的签到题(博弈)
牛客小白月赛16 小石的签到题 链接:https://ac.nowcoder.com/acm/contest/949/A来源:牛客网 题目描述 输入描述: 共一行,输入一个数 nnn . 输出描述: ...
- 牛客小白月赛58 B(暴力)C(思维)D(dp滚动数组优化)
牛客小白月赛58 感觉没什么意思,这场月赛出题人有点问题. B 题意:给定一定的数据填充顺序和每一个填充层的名称,只有填充满了上一层才可以填充下一层. 但是每一层又属于某一个大层,一个大层中包含了若干 ...
- 牛客小白月赛65个人题解A-E
1. 牛客小白月赛65 A. 牛牛去购物 题意:给定n元,购买价格为a元的篮球和价格为b的篮球,数量不定,要使得花掉的钱最多,也就是剩余的钱数最少,求这个值 (1 <= n, a, b < ...
- 牛客小白月赛60(A~C)题解
原题地址:牛客小白月赛60_ACM/NOI/CSP/CCPC/ICPC算法编程高难度练习赛_牛客竞赛OJ 题目A:小竹与妈妈 题意:输出(x-b)/a即可,没什么好说 代码: #include< ...
- 牛客小白月赛27 B.乐团派对
牛客小白月赛27 B.乐团派对 题目链接 题目描述 音乐是带给大家快乐的存在,而你的目标就是组建若干支乐队,让世界听到你们的演奏! 你目前有 nnn 位乐手,每位乐手只能进入一个乐队,但并不是每位乐手 ...
最新文章
- 1小时学会:最简单的iOS直播推流(十)librtmp使用介绍
- 机器人如何懂得人类感情
- 如何实现每个周期4个FLOP的理论最大值?
- 前端信息查询与显示_中国商标网查询显示的信息都是正确的吗
- 顶级数据库行会Percona阿里全面解析下一代云数据库技术
- 2.5w字长文爆肝 C++动态内存与智能指针一篇搞懂!太顶了!!!
- 用python实现时间的动态(动态时钟)+ 算出某年某月星期几的所有日期
- opencv for java HoughLinesP的使用
- log4j中将SocketAppender将日志内容发送到远程服务器
- 【论文笔记】Deep Neural Networks for Object Detection
- Hadoop大数据测试:Hadoop大数据平台测试流程
- rapidminer java_RapidMiner在Java应用程序中的集成
- 零基础手把手用solidworks教你画联轴器
- 手机linux发短信的命令,在Linux中使用飞信发送手机短信
- OSPF高级特性 —— 路由聚合(汇总)
- TypeError: Object of type xxx is not JSON serializable错误解决
- 开源中国众包平台 —— 为什么我们需要托管赏金
- 灵隐寺高僧汇报 “数字化寺院” 方案,走红网络! “系统可用性” 随缘、KPI 随心?...
- macmini时间机器备份文件服务器,用普通NAS代替苹果Time Machine 功能实现MAC的时间机器...
- ajax实时获取股票信息,Ajax学习笔记03-模拟动态显示股票信息动态变化的小例子...
热门文章
- js代码判断浏览器种类IE、FF、Opera、Safari、chrome及版本
- 配置dns问题server can‘t find .com: SERVFAIL
- 健康的身体才是一切根源,记太极拳第一式
- Linux 识别USB网卡后 使用ifconfig命令未出现eth0
- Unity ECS小知识1 - PhysicsTrigger Event
- 办公创意简历模板-Word简历可编辑下载
- 乐活 一个互联网企业的人生态度
- Python僵尸进程
- 分享30个有趣的 Python小游戏,我能玩一天
- python的dataframe的mul_python pandas DataFrame.mul用法及代码示例