2021中国大学生程序设计竞赛(CCPC)- 网络选拔赛(重赛)

Primality Test

在这里插入图片描述

#include<bits/stdc++.h>
using namespace std;
typedef long long ll;
int main(){
	ll t;
	cin>>t;
	while(t--){
		ll x;//注意数据范围
		cin>>x;
		if(x==1) puts("YES");
		else puts("NO");
	}
    return 0;
} 

Kanade Doesn’t Want to Learn CG

题目大意:
在一二维平面中,篮板视为与y轴平行的线段,蓝框视为与x平行的线段。篮球的运动轨迹视为开口向下的抛物线。
规定:
1、若篮球从上往下穿过篮筐,视为投篮得分。
2、若篮球击中篮板,篮球将发生反弹(沿x轴方向的速度方向反转,沿y轴方向的速度不变)
以下情况不计入得分:
1、篮球从下往上穿过篮筐
2、篮球击中篮筐的任意端点

篮球抛出的起点横坐标很小很小,所以不存在篮板和篮筐在抛出点左边的情况。

抛物线方程已经给出,关键点的坐标也都给出,所以直接把点代入方程,做出相应判断即可。
(题目怎么说就怎么做,不要多想)
两种进球得分方式:
在这里插入图片描述

#include<bits/stdc++.h>
using namespace std;
typedef long long ll;
ll a,b,c;
ll f(ll x){
	ll ans=a*x*x+b*x+c;
	return ans;
}
int main(){
	int t;
	scanf("%d",&t);
	while(t--){
		scanf("%lld%lld%lld",&a,&b,&c);
		ll x0,x1,y0,y1,y2;
		scanf("%lld%lld%lld%lld%lld",&x0,&x1,&y0,&y1,&y2);
		ll x2=2*x1-x0;
		if(f(x0)>y0&&f(x1)<y0) puts("Yes");
		else if(f(x0)>y0&&f(x1)>y0&&f(x1)<=y2&&f(x2)<y0) puts("Yes");
		else puts("No");
	}
    return 0;
} 
  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值