合工大OJ_Problem1356 转啊转

题目不难,注意圆上点的坐标就行,高中数学知识



// 先输入一个整数T,表示T(T<50)组数据。
//每组数据一行七个实数a,b,r(r>0),x,y,w(w>=0),t(t>=0) 分别表示圆的圆心坐标(a,b),半径r,固定点坐标(x,y),角速度w,要查询的时刻t。
//上述所有数据的绝对值小于10000。

#include<bits/stdc++.h>
using namespace std;

const double PI = 3.1415926;

int main() {

	int T = 0;
	cin>>T;

	for(int i = 0 ; i < T ; ++i) {
		double a = 0,b = 0 ,r = 0,x = 0, y = 0 , w = 0 , t = 0;
		cin>>a>>b>>r>>x>>y>>w>>t;
		//直线方程为y = kx+m
		double  k = 0 , m = 0,d = 0;

		//圆上点的坐标
		double another_x = a+r*cos(w*t);
		double another_y = b+r*sin(w*t);

		//斜率
		k = (y-(another_y))/(x-(another_x));
		m = y - k*x;
		
//		printf("点的坐标为 (%lf,%lf) \n",another_x,another_y);
//		printf("直线方程为 y = %lfx+%lf \n",k,m);


		//点到直线距离公式
		d =abs((k*a-b+m)/sqrt(k*k+1));
		
		//两倍
		double result = 2*sqrt(r*r-d*d);

		cout<<setiosflags(ios::fixed)<<setprecision(2)<<result<<endl;

	}

	return 0;
}

----------------------------

题文:

转啊转

Time Limit: 1000 MSMemory Limit: 65536 KB
Total Submissions: 678Accepted: 173

Description


    在二维平面上,有一个固定的圆和一个固定的点(保证该点不在圆上),还有一个动点在圆上以角速度 w绕圆心一直转。在t时刻,连接该动点与定点成一条直线k,求直线k被圆所截线段的长度(即直线k在圆内部分长度)。

         动点初始时刻在圆的三点钟方向(即与x轴正方向平行),并以逆时针方向绕圆转。

  



Input


       先输入一个整数T,表示TT<50)组数据。

每组数据一行七个实数a,b,r(r>0),x,y,w(w>=0),t(t>=0) 分别表示圆的圆心坐标(a,b),半径r,固定点坐标(x,y),角速度w,要查询的时刻t

    上述所有数据的绝对值小于10000


Output


         输出答案占一行,保留2位小数。


Sample Input


1
1 1 1 3 1 3 0

Sample Output


2.00

Hint


角速度定义:

一个以弧度为单位的圆(一个圆周为2π,即:360=2π),在单位时间内所走的弧度即为角速度。


Source


安徽省2016“京胜杯”程序设计大赛

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
引用是一段关于利用pwntools库对jarvisoj_level0进行攻击的代码。代码中使用了remote()方法建立了远程连接,并构造了一个payload来利用栈溢出漏洞,最终执行callsystem()函数来获取shell权限。引用也是类似的代码,只是连接的地址不同。引用是一篇关于pwntools基本用法的文章,并提供了一些常用的函数和方法。根据这些引用内容,可以得出结论,jarvisoj_level0是一个存在栈溢出漏洞的程序,可以通过构造特定的payload来执行系统调用函数,从而获取shell权限。<span class="em">1</span><span class="em">2</span><span class="em">3</span> #### 引用[.reference_title] - *1* [jarvisoj_level0](https://blog.csdn.net/weixin_56301399/article/details/125919313)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v92^chatsearchT3_1"}}] [.reference_item style="max-width: 33.333333333333336%"] - *2* [jarvisOJ-level0](https://blog.csdn.net/qq_35661990/article/details/82889103)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v92^chatsearchT3_1"}}] [.reference_item style="max-width: 33.333333333333336%"] - *3* [jarvis oj---level0解题方法](https://blog.csdn.net/weixin_45427676/article/details/97272924)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v92^chatsearchT3_1"}}] [.reference_item style="max-width: 33.333333333333336%"] [ .reference_list ]

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值