打卡信奥刷题(049)用C++信奥P10314[普及组/提高] [SHUPC 2024] 函数Composition

[SHUPC 2024] 函数

题目描述

小 A 正在学习函数,有一天她发现了一个奇妙的函数:
f(x)=x−0.5+arctan⁡(cot⁡(πx))π f(x)=x-0.5+\frac{\arctan(\cot(\pi x))}{\pi} f(x)=x0.5+πarctan(cot(πx))

她非常喜欢这个函数。现在,她会对你提出 TTT 个询问,每个询问包含一个浮点数 xxx ,而你只需要回答 f(x)f(x)f(x) 的值是多少。

选手输出与标准答案的绝对误差或相对误差不超过 10−610^{-6}106 即视为正确。

输入格式

第一行一个整数 T (T≤104)T\ (T\le 10^4)T (T104) 表示数据组数。

接下来 TTT 行,每行一个浮点数 xxx ,保证 0≤x≤1090 \le x \le 10^90x109x∉Nx \notin \Nx/N(即 xxx 不为自然数)。

输出格式

输出 TTT 行,每行一个数,代表答案。

选手输出与标准答案的绝对误差或相对误差不超过 10−610^{-6}106 即视为正确。

样例 #1

样例输入 #1

3
1.10
1.72
2.34

样例输出 #1

1.000000
1.000000
2.000000

C++实现

#include
#include <bits/stdc++.h>

using namespace std;
int t;
double x;
const double pi=3.1415926;

int main() {
cin>>t;
while(t–){
cin>>x;
double ans = x-0.5+(atan((1/tan(pi*x)))/pi);
printf("%.6lf\n",ans);
}

// cout<<"==================="<<endl;
return 0;
}

在这里插入图片描述

后续

接下来我会不断用C++来实现信奥比赛中的算法题、GESP考级编程题实现、白名单赛事考题实现,感兴趣的请关注,我后续将继续分享相关内容

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值