2021年5.21NCU第四届校赛
比赛地址:http://222.204.50.106/contest/39
A 树上祖先
链接:http://222.204.50.106/contest/39/problem/A
B 莎士比亚
链接:http://222.204.50.106/contest/39/problem/B
C 益智游戏
链接:http://222.204.50.106/contest/39/problem/C
题意:
题解:
注意:
暴力。。。。以后看见奇偶一定直接输出
代码:
#include<bits/stdc++.h>
using namespace std;
int main(){
int n,m,t;
scanf("%d",&t);
while(t--){
scanf("%d%d",&n,&m);
if(m%2 == 0) puts("No");
else puts("Yes");
}
return 0;
}
D 神奇魔法
链接:http://222.204.50.106/contest/39/problem/D
E 我全都要
链接:http://222.204.50.106/contest/39/problem/E
F 二零二一
链接:http://222.204.50.106/contest/39/problem/F
题意:
两个有顺序的数之间差是2021的整数倍的对数
题解:
求余数组合一下就好了
注意:
代码:
#include<bits/stdc++.h>
using namespace std;
long long a[100005],b[4000],vis[4000];
int main()
{
int n;
cin>>n;
long long ans=0;
memset(b,0,sizeof(b));
memset(vis,0,sizeof(vis));
for(int i=0;i<n;i++)
{
cin>>a[i];
a[i]%=2021;
vis[a[i]]=1;
b[a[i]]++;
}
for(int i=0;i<2021;i++)
{
if(vis[i])ans+=b[i]*(b[i]-1)/2;
}
cout<<ans<<endl;
return 0;
}
G 小学数学
链接:http://222.204.50.106/contest/39/problem/G
题意:
从给定中挑出三个点形成的三角形的面积最大值
题解:s=1/2(x1y2+x2y3+x3y1-x1y3-x2y1-x3y2)
注意:记得加绝对值
代码:
#include<bits/stdc++.h>
using namespace std;
struct node {
long long x,y;
}data[1000],point1,point2,point3;
struct Node{
int x,y,z;
}T;
int main()
{
int n;cin>>n;long long ans=0;
for(int i=0;i<n;i++)cin>>data[i].x>>data[i].y;
for(int i=0;i<n;i++)
{
for(int j=i+1;j<n;j++)
{
for(int k=j+1;k<n;k++)
{
long long t=data[i].x*data[j].y+data[j].x*data[k].y+data[k].x*data[i].y-data[i].x*data[k].y-data[j].x*data[i].y-data[k].x*data[j].y;
t=abs(t);
if(ans<t){
T.x=i;
T.y=j;
T.z=k;
ans=t;
}
}
}
}
cout<<T.x<<" "<<T.y<<" "<<T.z<<endl;
//cout<<ans;
return 0;
}
H 糖果齁咸
链接:http://222.204.50.106/contest/39/problem/H
题意:
随机选取几个糖果,每次取最大值和最小值得乘积,求和
题解:
一个类似于等比数列的玩意儿,稍微列一下,找规律就行
代码:
#include<bits/stdc++.h>
using namespace std;
typedef long long ll;
const long long mod=998244353;
int main()
{
int n;
ll a[200005];
cin>>n;ll ans=0,sum=0;
for(int i=1;i<=n;i++)cin>>a[i];
sort(a+1,a+n+1);
for(int i=1;i<=n;i++)
{
sum=(sum-a[i-1])*2+a[i-1];
sum+=a[i];
sum=(sum%mod+mod)%mod;
ans+=sum*a[i]%mod;
ans%=mod;
}
cout<<ans;
return 0;
}
I ZYC as Polizei
链接:http://222.204.50.106/contest/39/problem/I
题意:已知距离,坐标,求另一个点坐标
题解:
坐标列一下
注意:
代码:
#include<bits/stdc++.h>
using namespace std;
int main()
{
double a,b,c;
double d1,d2,d3;
cin>>a>>b>>c>>d1>>d2>>d3;
double x,y;
x=(d1*d1-d2*d2+a*a)/(2*a);
y=(d1*d1-d3*d3+b*b+c*c-2*b*x)/(2*c);
printf("(%.3lf,%.3lf)",x,y);
return 0;
}
J 合理内卷
链接:http://222.204.50.106/contest/39/problem/J
题意:
某个数选择了在它旁边的两个数值就不能选择,找到一个最优的解
题解:
DP大法
注意:
long long(s数据较大,遇事不决开long long)
代码:
#include<bits/stdc++.h>
using namespace std;
long long data[100005],dp[100005];
int main()
{
long long n,x,maxn=0;
cin>>n;
memset(data,0,sizeof(data));
memset(dp,0,sizeof(dp));
for(int i=1;i<=n;i++)
{
cin>>x;
dp[x]+=x;
}
for(int i=1;i<=n;i++)
{
if(i>2)dp[i]+=dp[i-2];
dp[i]=max(dp[i],dp[i-1]);
maxn=max(dp[i],maxn);
}
cout<<maxn;
return 0;
}
2021年5.21NCU第四届校赛的更多相关文章
- 2016 华南师大ACM校赛 SCNUCPC 非官方题解
我要举报本次校赛出题人的消极出题!!! 官方题解请戳:http://3.scnuacm2015.sinaapp.com/?p=89(其实就是一堆代码没有题解) A. 树链剖分数据结构板题 题目大意:我 ...
- SCNU省选校赛第二场B题题解
今晚的校赛又告一段落啦,终于"开斋"了! AC了两题,还算是满意的,英语还是硬伤. 来看题目吧! B. Array time limit per test 2 seconds me ...
- 2014上半年acm总结(1)(入门+校赛)
大一下学期才开始了acm,不得不说有一点迟,但是acm确实使我的生活充实了很多,,不至于像以前一样经常没事干= = 上学期的颓废使我的c语言学的渣的一笔..靠考前突击才基本掌握了语法 寒假突然醒悟, ...
- 一场刺激的游戏——很文艺的山东省第四届ACM赛总结(菜鸟版)
人生就像一个个节点,节点中或许有成功,失败,满足,遗憾,但是只要它是不可复制的,在日后,便是美好. ...
- 2017CUIT校赛-线上赛
2017Pwnhub杯-CUIT校赛 这是CUIT第十三届校赛啦,也是我参加的第一次校赛. 在被虐到崩溃的过程中也学到了一些东西. 这次比赛是从5.27早上十点打到5.28晚上十点,共36小时,中间睡 ...
- HZNU第十二届校赛赛后补题
愉快的校赛翻皮水! 题解 A 温暖的签到,注意用gets #include <map> #include <set> #include <ctime> #inclu ...
- 校赛F
问题描述 例如对于数列[1 2 3 4 5 6],排序后变为[6 1 5 2 4 3].换句话说,对于一个有序递增的序列a1, a2, a3, ……, an,排序后为an, a1, an-1, a2, ...
- PKU2018校赛 H题 Safe Upper Bound
http://poj.openjudge.cn/practice/C18H 题目 算平均数用到公式\[\bar{x}=\frac{x_1+x_2+x_3+\cdots+x_n}{n}\] 但如果用in ...
- 【魔改】hdu6325 多校赛3G xy排序凸包+llvector模板
凸包算法前的预处理,可以极角排序,也可以按X,Y轴排序, 极角排序需要找到角落里的一个点,Xy轴排序要跑两遍凸包 而本题的要求只要一个上半凸包,并且有X轴从小到大以及字典序限制,完全符合xy排序,直接 ...
- 牛客网多校赛第9场 E-Music Game【概率期望】【逆元】
链接:https://www.nowcoder.com/acm/contest/147/E 来源:牛客网 时间限制:C/C++ 1秒,其他语言2秒 空间限制:C/C++ 262144K,其他语言524 ...
随机推荐
- C# 获取QQ会话聊天信息
利用UIAutomation获取QQ会话聊天信息 AutomationElement window = AutomationElement.FromHandle(get.WindowHwnd); Au ...
- HashMap集合的map.values()返回的Collection集合执行add方法报空指针问题
一.方法1. private Collection<String> setPermissionTenant(List<SysPermission> ls, int tenant ...
- 巧用dblink 实现多进程并行查询
概述 对于分区表的大数据统计分析,由于数据量巨大,往往需要采用并行.但是数据库并行的效率相比分进程分表统计还是有比较大的差距.本文通过巧用dblink,实现分进程分分区统计数据. 例子 kingbas ...
- #欧拉回路#AT4518 [AGC032C] Three Circuits
题目 给定一个 \(n\) 个点,\(m\) 条边的简单无向连通图, 问是否能将边分成三部分,使每部分都能成为环 分析 每个点的度数都得为偶数,这不由得想到了欧拉回路. 如果整张图是一个简单环那么一定 ...
- 使用OHOS SDK构建googletest
参照OHOS IDE和SDK的安装方法配置好开发环境. 从github下载源码. 执行如下命令: git clone --depth=1 https://github.com/google/googl ...
- 诚邀报名丨首期OpenHarmony开发者成长计划分享日
OpenAtom OpenHarmony(以下简称"OpenHarmony")开源开发者成长计划,是一项为了鼓励开发者积极参与开源软件的开发维护.帮助开发者在开源项目中成长的社会 ...
- AJAX 前端开发利器:实现网页动态更新的核心技术
AJAX AJAX是开发者的梦想,因为你可以: 在不重新加载页面的情况下更新网页 在页面加载后请求来自服务器的数据 在页面加载后接收来自服务器的数据 在后台向服务器发送数据 HTML页面 <!D ...
- Linux忘记root密码修改方法
1. 再开机启动的时候按键盘上的"e"键会出现如下界面.再次按"e"键进行选择相应的内核. 2. 选择相应的内核,再次按"e". 3.经过第 ...
- 一图读懂HUAWEI HiAI Foundation
作为华为端侧AI的创新开放平台,HMS Core的HUAWEI HiAI Foundation开放AI算力,助力AI应用高效开发,同时联合多领域打造AI生态,实现日调用600亿次的突破,助力AI生态繁 ...
- Python查询上周五是多少号
使用Python可以轻松的查询出上周几是多少号,这周几是什么多少号,以下是查询上周五的示例: import datetime, calendar last = datetime.date.today( ...