牛客小白月赛63
比赛链接:牛客小白月赛63_ACM/NOI/CSP/CCPC/ICPC算法编程高难度练习赛_牛客竞赛OJ
A题
签到题,把所有数按位与一遍就行。
-
#include<iostream>
-
using namespace std;
-
-
int main()
-
{
-
int n,a,ans;
-
cin>>n;
-
cin>>a;
-
ans=a;
-
for(int i=2;i<=n; i)
-
{
-
cin>>a;
-
ans=a&ans;
-
}
-
-
cout<<ans<<endl;
-
-
return 0;
-
}
B题:
阅读理解题,暴力,遍历每次攻击,判断是否击杀随从,击杀则attack ,在每次循环最后计算boss伤害的增量。
-
-
using namespace std;
-
-
int main()
-
{
-
int n,m;
-
int attack=2;
-
int a[1005];
-
int ans=0;
-
cin>>n>>m;
-
-
for(int i=1;i<=n; i)
-
{
-
cin>>a[i];
-
}
-
-
for(int i=1;i<=m; i)
-
{
-
for(int j=1;j<=n; j)
-
{
-
if(attack==a[j])
-
{
-
attack ;
-
a[j]=-1;
-
}
-
else
-
{
-
a[j]-=attack;
-
}
-
}
-
ans =attack;
-
}
-
-
cout<<ans<<endl;
-
-
return 0;
-
}
c题
核心在于如何求n个数的全排列,这里我用了一个dfs,x为当前处理的位数,i为该位放置的数字。当x==n时,根据双方对应的大爹个数,计算是谁赢了还是平局,给对应计数器加1.
-
-
using namespace std;
-
-
typedef long long ll;
-
-
int n;
-
int a[15],b[15];
-
ll victory=0,equ=0,defeat=0;
-
bool vis[15]={false};
-
ll va=0,vb=0;
-
-
void dfs(int x)
-
{
-
for(int i=1;i<=n; i)
-
{
-
if(vis[i]==false)
-
{
-
vis[i]=true;
-
if(a[x]>b[i]) va ;
-
else if(a[x]<b[i]) vb ;
-
-
if(x==n)
-
{
-
if(va>vb) victory ;
-
else if(va<vb) defeat ;
-
else if(va==vb) equ ;
-
}
-
else dfs(x 1);
-
-
vis[i]=false;
-
if(a[x]>b[i]) va--;
-
else if(a[x]<b[i]) vb--;
-
}
-
}
-
}
-
-
int main()
-
{
-
cin>>n;
-
for(int i=1;i<=n; i) cin>>a[i];
-
for(int i=1;i<=n; i) cin>>b[i];
-
-
dfs(1);
-
-
cout<<victory<<" "<<defeat<<" "<<equ<<endl;
-
-
return 0;
-
}
D题
我觉得这个题的难度配不上D这个编号,贪心,每次选最便宜那个颜色,到第三个时,换第二便宜的颜色,然后继续用最便宜的。最后,首尾相接,所以最后那朵花用第二便宜颜色染,防止与最开始两朵花颜色连续。
-
-
-
using namespace std;
-
-
typedef long long ll;
-
-
int main()
-
{
-
ll n,m;
-
ll a[5];
-
ll ans=0;
-
int two=0;
-
cin>>n>>m;
-
for(int i=1;i<=m; i)
-
{
-
cin>>a[i];
-
}
-
-
sort(a 1,a m 1);
-
-
for(int i=1;i<n; i)
-
{
-
if(two!=2)
-
{
-
ans =a[1];
-
two ;
-
}
-
else
-
{
-
ans =a[2];
-
two=0;
-
}
-
}
-
-
ans =a[2];
-
-
if(m==1&&n>=3) cout<<"Ginger666"<<endl;
-
else cout<<ans<<endl;
-
-
return 0;
-
}
E题
这篇好文章是转载于:学新通技术网
- 版权申明: 本站部分内容来自互联网,仅供学习及演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,请提供相关证据及您的身份证明,我们将在收到邮件后48小时内删除。
- 本站站名: 学新通技术网
- 本文地址: /boutique/detail/tanhgfcifi
系列文章
更多
同类精品
更多
-
photoshop保存的图片太大微信发不了怎么办
PHP中文网 06-15 -
《学习通》视频自动暂停处理方法
HelloWorld317 07-05 -
Android 11 保存文件到外部存储,并分享文件
Luke 10-12 -
word里面弄一个表格后上面的标题会跑到下面怎么办
PHP中文网 06-20 -
photoshop扩展功能面板显示灰色怎么办
PHP中文网 06-14 -
微信公众号没有声音提示怎么办
PHP中文网 03-31 -
excel下划线不显示怎么办
PHP中文网 06-23 -
excel打印预览压线压字怎么办
PHP中文网 06-22 -
怎样阻止微信小程序自动打开
PHP中文网 06-13 -
TikTok加速器哪个好免费的TK加速器推荐
TK小达人 10-01