2023牛客寒假算法基础集训营6
A-阿宁的签到题
链接:登录—专业IT笔试面试备考平台_牛客网
来源:牛客网
这是一道签到题,想必大家都可以顺利签到吧?!!!
在这次寒假集训营中每一个题都有一个难度评分xxx。
题目分为以下等级:
- very easy (1≤x≤7)(1\le x \le 7)(1≤x≤7)
- easy (7<x≤233)(7\lt x \le 233)(7<x≤233)
- medium (233<x≤10032)(233\lt x \le 10032)(233<x≤10032)
- hard (10032<x≤114514)(10032\lt x \le 114514)(10032<x≤114514)
- very hard (114514<x≤1919810)(114514\lt x \le 1919810)(114514<x≤1919810)
- can not imagine (1919810<x)(1919810\lt x)(1919810<x)
你拿到这次寒假集训营其中的一道题,并且对它评估了一个分数,请你根据以上划分输出等级。
输入描述:
输入一个整数xxx。 1≤x<2311 \le x \lt 2^{31}1≤x<231
输出描述:
输出一个字符串。
示例1
输入
复制1
1
输出
复制very easy
very easy
说明
想必这题就是这个等级吧(゜▽゜*)。
示例2
输入
复制2147483647
2147483647
#include<bits/stdc++.h>
using namespace std;
int main(){long long int x;cin>>x;if(x>=1&&x<=7)cout<<"very easy";else if(x>7&&x<=233)cout<<"easy";else if(x>233&&x<=10032)cout<<"medium";else if(x>10032&&x<=114514)cout<<"hard";else if(x>114514&&x<=1919810)cout<<"very hard";else cout<<"can not imagine";return 0;
}
B-阿宁的倍数
//以下是错误代码,本人觉得题目蛮简单的,测试样例也过了,但是问题是超时,实在想不出有什么高效办法,有待解决。
#include<bits/stdc++.h>
using namespace std;
int main(){long long int n,q,a[400005],i,j,op,x,y=0;cin>>n>>q;j=n;for(i=1;i<=n;i++)cin>>a[i];while(q--){y=0;cin>>op>>x;if(op==1)a[++j]=x;else{for(i=x+1;i<=j;i++){if(a[i]%a[x]==0)y++;}cout<<y<<endl;}}return 0;
}
C-阿宁的大背包
//代码只写了一般,准确来说只有开头,题目读懂了,但解题规律一直没找到,就是对1-n排个序,使得不断重复每两两相加得到一个最大值。
这种排序有很多种,按我的理解是,可以看成金字塔,顶端是最大,依次下边是第二第三大,可以发现第一次操作后有一些数字对称,这样也方便后面进行输出,比如1357642,也就是左小右大,且左边奇数右边偶数,当然偶数个情况下,比如1342,虽然和输出样例不同,但结果是相同的,也就是3,4可以调换。
我一直以为有规律,就是利用公式即可解决最大值,然后处理顺序,后面补题参考了人家的代码,才发现自己对循环的利用不到家阿。
将奇数依次存数组,借助k变量,同时利用k变量,依次获取末尾位置存入偶数,再用个数组把当前数组序存好,然后借助双重循环,第一是循环次数,第二是每次i循环下产生的n-i个结果,结束之后就取余,避免后面太大。
#include<bits/stdc++.h>
using namespace std;
int main(){int n,i,a[1005],j,k=0,b[1005];cin>>n;for(i=1;i<=n;i++){if(i%2==1)a[++k]=i;else a[n-k+1]=i;}for(i=1;i<=n;i++)b[i]=a[i];for(i=1;i<=n;i++){for(j=1;j<=n-i;j++){a[j]=a[j]+a[j+1];a[j]%=1000000007;}}cout<<a[j]<<endl;for(i=1;i<=n;i++){if(i!=1)cout<<" ";cout<<b[i];}return 0;
}
F- 阿宁的二进制
//题目是读懂了,但是实现的这个过程好难,代码未进行尝试
G-阿宁的整数配对
链接:登录—专业IT笔试面试备考平台_牛客网
来源:牛客网
阿宁有一个长度为nnn的整数数组aaa,阿宁想要在其中选出恰好kkk对整数,使得每对整数相乘并求和尽可能大。
阿宁想知道最终得到的值是多少?
输入描述:
第一行两个整数n,kn,kn,k。 第二行nnn个整数aia_iai。 2≤n≤2×1052 \le n \le 2 \times 10^52≤n≤2×105 1≤k≤⌊n2⌋1 \le k \le \lfloor \frac{n}{2} \rfloor1≤k≤⌊2n⌋ −100≤ai≤100-100 \le a_i \le 100−100≤ai≤100
输出描述:
输出一个整数,表示答案。
示例1
输入
复制5 2 1 2 -1 -2 -3
5 2 1 2 -1 -2 -3
输出
复制8
8
说明
选择111和222,−2-2−2和−3-3−3,1×2+(−2)×(−3)=81\times 2 + (-2)\times(-3)=81×2+(−2)×(−3)=8。
示例2
输入
复制5 2 -1 0 0 0 0
5 2 -1 0 0 0 0
输出
复制0
0
说明
选择−1-1−1和000,000和000,−1×0+0×0=0-1\times 0 + 0\times 0=0−1×0+0×0=0。
//就是把正负数分别存入a,b数组,然后分别排序,再分别一对一对的相乘存c数组,如果有单着的数就不管,但是当n是偶数,并且证书和负数都为奇数个时候,再作一次特殊计算,这里的正数包括了0,最后c数组排序,加上最大k对就行了.
#include<bits/stdc++.h>
using namespace std;int main(){int n,k,i,a[200005],b[200005],c[200005],s=0,d,x=0,y=0,z=0;map<int,int>p; cin>>n>>k;for(i=0;i<n;i++){cin>>d;if(d<0)a[x++]=d;else b[y++]=d;}sort(a,a+x);sort(b,b+y);for(i=0;i<x;i++){if(p[i]==0&&p[i+1]==0&&i+1<x){c[z++]=a[i]*a[i+1];p[i]=1;p[i+1]=1;}}p.clear();for(i=y-1;i>=0;i--){if(p[i]==0&&p[i-1]==0&&i-1>=0){c[z++]=b[i]*b[i-1];p[i]=1;p[i-1]=1;}}p.clear();if(n%2==0&&x%2==1&&y%2==1)c[z++]=a[x-1]*b[0];sort(c,c+z);for(i=z-1;i>=0;i--){if(k==0)break;s+=c[i];k--;}cout<<s;return 0;}
H- 阿宁讨伐虚空
链接:登录—专业IT笔试面试备考平台_牛客网
来源:牛客网
脆皮领主阿宁带领着脆皮小弟们前往虚空,讨伐虚空领主。
虚空领主有一个小弟虚空蛇,由于虚空蛇敏捷高速、攻击范围广,脆皮小弟们一死一大片,阿宁大为痛心。
- 您的114514个脆皮变成了脆皮干。
- 您的114514个脆皮护甲不足,没了。
- 您的114514个脆皮挂了,真弱。
- 您的114514个脆皮皮爆了。
- 您的114514个脆皮摔死了。
- 您的114514个脆皮翘辫子了。
- 您的114514个脆皮心电图成了直线。
- 您的114514个脆皮熔化了。
- 您的114514个脆皮渡过了冥河。
- 您的114514个脆皮食尘了。
- 您的114514个脆皮无法继续与您并肩作战了。
- 您的114514个脆皮消失了。
在一次对拼中,阿宁有xxx个脆皮攻击虚空蛇。虚空蛇在脆皮攻击之前杀死yyy个脆皮(yyy是区间[L,R][L,R][L,R]内等概率选一个整数。如果x<yx\lt yx<y,那么只杀死xxx个脆皮)。如果脆皮还活着,就能攻击到虚空蛇。
问:在一次对拼中,虚空蛇被攻击到的概率是多少?
输入描述:
第一行一个整数xxx。 第二行两个整数L,RL,RL,R。 1≤x≤1091\le x \le 10^91≤x≤109 1≤L≤R≤1091\le L \le R \le 10^91≤L≤R≤109
输出描述:
输出一个浮点数,表示虚空蛇被攻击到的概率。 如果你的答案和标准答案的相对误差小于10−610^{-6}10−6,则认为你的答案正确。
示例1
输入
复制5 1 6
5 1 6
输出
复制0.6666666666666666
0.6666666666666666
说明
yyy取111到444时,还有脆皮没死,虚空蛇会被攻击到。
yyy取555到666时,脆皮都死了,虚空蛇不会被攻击到。
示例2
输入
复制114514 1314 1919810
114514 1314 1919810
输出
复制0.0590045228
0.0590045228
//不要被输出格式误导
#include<bits/stdc++.h>
using namespace std;int main(){int x,l,r,s=0;cin>>x;cin>>l>>r;for(int i=l;i<=r;i++){if(i<x)s++;}printf("%lf",s*1.0/(r-l+1));return 0;}
2023牛客寒假算法基础集训营6相关推荐
- 2023牛客寒假算法基础集训营5(通过ABCDHIKL) I题有详解(F已补)
其他题待补中-- 链接:2023牛客寒假算法基础集训营5 简单题 A 小沙の好客(贪心,前缀和,二分) 题意思路 给定 n n n个商品的价值, q q q次询问,每次询问 k , x k, x k, ...
- 2023牛客寒假算法基础集训营4_20230130「向上取整」「夹逼dp」「lowbit科学+树状数组性质」「搜索」「倍增跳表」「莫队」
6/13 教育场是有被教育到.(预计会鸽几题. 已过非太水的题们 //B //https://ac.nowcoder.com/acm/contest/46812/B//小构造小数学#include & ...
- 2023牛客寒假算法基础集训营1_20230116「典dp」「典set」「小思维+bfs」「小思维+构造+码力」「位运算博弈(人类智慧)」
6/13 打得不好,这两天家里也很不好,跟做梦一样,脑子好像被僵尸吃掉了,前两个小时胡乱瞎写交题只过样例,wa了再看,什么b错都能写出来. M. M-本题主要考察了找规律_2023牛客寒假算法基础集训 ...
- 2023牛客寒假算法基础集训营4 赛时思路+正解
今天的训练营全是图论题,实属遇到了自己不会的场了,只能凑合凑合打了,可能这把要上黄了,寒假算法基础训练营系列也有可能到此完结了. 今天的场我觉得应该是一个值得补题的一场,有很多题并不难但是比较典型的题 ...
- 2023牛客寒假算法基础集训营2 -- E-Tokitsukaze and Function(数学 二分)
题目如下: T o k i t s u k a z e Tokitsukaze Tokitsukaze 有一个函数 f ( x ) = ⌊ x n ⌋ + x − 1 f(x)=⌊\frac{x}{n ...
- 2023牛客寒假算法基础集训营3(8/11)
不断减损的时间 贪心,负数只会越除越大,所以只操作正偶数 AC代码: #include <bits/stdc++.h> using namespace std; using LL = lo ...
- 2023牛客寒假算法基础集训营1
A模拟 World Final? World Cup! (I) 题意:A.B两队轮流罚球,共10局,告诉你罚球的结果,进球多的队伍获胜,问在哪一局就可以知道最终结果. 思路:枚举每一轮i,计算后面A. ...
- 2023牛客寒假算法基础集训营3 -- E-公平守望的灯塔(向量 简单几何)
题目如下: 示例1 输入 1 0 0 1 输出 0 0 说明 输出1 1也是可以的. 思路 or 题解: 我们可以迅速找到 CCC 有两个位置满足题意,但 CCC 的坐标不一定是整数,我们需要 che ...
- 2021牛客寒假算法基础集训营1 J 一群小青蛙呱蹦呱蹦呱
今天的比赛没打( 睡午觉去了,今天太累了 晚上来看看题 2021牛客寒假算法基础集训营1 J 一群小青蛙呱蹦呱蹦呱 题目传送门 板子题( 我们知道由唯一分解定理得,若 n=p1α1×p2α2×p3α3 ...
最新文章
- Redis消息通知系统的实现
- python中for语句可以有else部分_Python中的for...else语句可以不写else吗?
- cogs 1430. [UVa 11300]分金币
- html5游戏加载动画,HTML5 战场3游戏的加载指示动画
- python学习方向-Python方向(转载)
- ES6实现一些常见算法
- C#各种加密算法的研究
- SCCM2007 R2部署Windows7,SCCM系列之八
- 微软MVP社区夏日巡讲诚邀您的参与: 北京,上海,西宁,成都,西安
- JVM——字符串常量池详解
- HDU 3359 高斯消元模板题,
- OpenShift 4 - 多云管理(2) - 部署应用
- Android世界第一个activity启动过程
- 关于static的使用
- 远离魔咒,见微知著,打造崭新的罗浮宫
- OFFICE技术讲座:设置调整字间距(kern)后,标点就不压缩
- 【win10清理系统垃圾脚本】
- opengl 五角星画法 源代码
- 在龙芯电脑制作 debian 系统(MIPS)
- CSDN的C1-见习工程师能力认证相关知识(框架)