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相关推荐

  1. 2023牛客寒假算法基础集训营5(通过ABCDHIKL) I题有详解(F已补)

    其他题待补中-- 链接:2023牛客寒假算法基础集训营5 简单题 A 小沙の好客(贪心,前缀和,二分) 题意思路 给定 n n n个商品的价值, q q q次询问,每次询问 k , x k, x k, ...

  2. 2023牛客寒假算法基础集训营4_20230130「向上取整」「夹逼dp」「lowbit科学+树状数组性质」「搜索」「倍增跳表」「莫队」

    6/13 教育场是有被教育到.(预计会鸽几题. 已过非太水的题们 //B //https://ac.nowcoder.com/acm/contest/46812/B//小构造小数学#include & ...

  3. 2023牛客寒假算法基础集训营1_20230116「典dp」「典set」「小思维+bfs」「小思维+构造+码力」「位运算博弈(人类智慧)」

    6/13 打得不好,这两天家里也很不好,跟做梦一样,脑子好像被僵尸吃掉了,前两个小时胡乱瞎写交题只过样例,wa了再看,什么b错都能写出来. M. M-本题主要考察了找规律_2023牛客寒假算法基础集训 ...

  4. 2023牛客寒假算法基础集训营4 赛时思路+正解

    今天的训练营全是图论题,实属遇到了自己不会的场了,只能凑合凑合打了,可能这把要上黄了,寒假算法基础训练营系列也有可能到此完结了. 今天的场我觉得应该是一个值得补题的一场,有很多题并不难但是比较典型的题 ...

  5. 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 ...

  6. 2023牛客寒假算法基础集训营3(8/11)

    不断减损的时间 贪心,负数只会越除越大,所以只操作正偶数 AC代码: #include <bits/stdc++.h> using namespace std; using LL = lo ...

  7. 2023牛客寒假算法基础集训营1

    A模拟 World Final? World Cup! (I) 题意:A.B两队轮流罚球,共10局,告诉你罚球的结果,进球多的队伍获胜,问在哪一局就可以知道最终结果. 思路:枚举每一轮i,计算后面A. ...

  8. 2023牛客寒假算法基础集训营3 -- E-公平守望的灯塔(向量 简单几何)

    题目如下: 示例1 输入 1 0 0 1 输出 0 0 说明 输出1 1也是可以的. 思路 or 题解: 我们可以迅速找到 CCC 有两个位置满足题意,但 CCC 的坐标不一定是整数,我们需要 che ...

  9. 2021牛客寒假算法基础集训营1 J 一群小青蛙呱蹦呱蹦呱

    今天的比赛没打( 睡午觉去了,今天太累了 晚上来看看题 2021牛客寒假算法基础集训营1 J 一群小青蛙呱蹦呱蹦呱 题目传送门 板子题( 我们知道由唯一分解定理得,若 n=p1α1×p2α2×p3α3 ...

最新文章

  1. Redis消息通知系统的实现
  2. python中for语句可以有else部分_Python中的for...else语句可以不写else吗?
  3. cogs 1430. [UVa 11300]分金币
  4. html5游戏加载动画,HTML5 战场3游戏的加载指示动画
  5. python学习方向-Python方向(转载)
  6. ES6实现一些常见算法
  7. C#各种加密算法的研究
  8. SCCM2007 R2部署Windows7,SCCM系列之八
  9. 微软MVP社区夏日巡讲诚邀您的参与: 北京,上海,西宁,成都,西安
  10. JVM——字符串常量池详解
  11. HDU 3359 高斯消元模板题,
  12. OpenShift 4 - 多云管理(2) - 部署应用
  13. Android世界第一个activity启动过程
  14. 关于static的使用
  15. 远离魔咒,见微知著,打造崭新的罗浮宫
  16. OFFICE技术讲座:设置调整字间距(kern)后,标点就不压缩
  17. 【win10清理系统垃圾脚本】
  18. opengl 五角星画法 源代码
  19. 在龙芯电脑制作 debian 系统(MIPS)
  20. CSDN的C1-见习工程师能力认证相关知识(框架)

热门文章

  1. C++:实现量化可转换债券测试实例
  2. python 读取.env配置文件
  3. msp430f5529
  4. android p 5t,刘作虎:一加6T出厂搭载Android P 将于11月5日发布 适配5T
  5. 2021-10-27 利用Excel生成数据图
  6. 俄歇电子能谱(AES)到底可以用来测什么?
  7. 自己动手预防U盘和移动硬盘自动运行病毒
  8. Hadoop学习笔记: 分布式数据库 HBase
  9. 在软件定义汽车的时代,低代码究竟给车企数字化转型带来了什么?
  10. VUE页面生命周期钩子函数