EOJ Monthly 2019.9 (based on September Selection) - D. 站军姿

2023-10-18 00:20

本文主要是介绍EOJ Monthly 2019.9 (based on September Selection) - D. 站军姿,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

- ECNU 华东师大月赛D题 -

D. 站军姿

单点时限: 2.0 sec | 内存限制: 512 MB

题目描述

“向右看齐”
“向前看”
“ 20 分钟军姿”
每天的军训, Cuber QQ 最喜欢的就是站军姿的环节。因为在站军姿的时候, Cuber QQ 可以看着美丽的丽娃河思考人生。
今天, Cuber QQ 开始观察丽娃河上的鸭子了。 Cuber QQ 近似地把丽娃河看成一个圆形的池塘,他数了数,一共有 n 只鸭子在丽娃河上,鸭子在丽娃河上任意的划水。
Cuber QQ 突发奇想,如果它们的位置是等概率随机的,它们有多大的概率会分布在圆形池塘的同一个半圆内呢?
“眼睛都别闭上了,我看看谁的眼睛闭着让他站到前面来”
教官突然的一句话,打断了 Cuber QQ 的思考,他忘记怎么做了。

输入格式

第一行一个整数 T ( 1≤T≤105 ),代表数据组数。
接下来 T 行,每行一个整数 n ( 1≤n≤1018 ),代表鸭子的数量。

输出格式

共 T 行,每行一个整数,表示答案。
可以证明答案是一个分数。我们令答案的最简分数是 P/Q,对每一个询问输出 P⋅Q−1mod1 000 000 007,其中 Q−1 是 Q 在模 1 000 000 007 意义下的逆元。

样例

Input
2
1
2

Output
1
1

提示

鸭子数量为 1 或 2 时,属于同一个半圆的概率是 1。
由于鸭子相比池塘太小了,我们可以把鸭子当作点。

题解

题解自己想的时候以为概率是(1/21-n)  ̄□ ̄||

代码

#include <iostream>
#include <cstdio>
#include <cstring>
#include <string>
#include <algorithm>
#include <cmath>
#include <stack>
#include <queue>
#include <vector>
#include <map>
#include <set>
using namespace std;
#define lowbit(x) (x&(-x))
#define INF 0x3f3f3f3f
#define inf 1ll<<60
#define zero 1e-7
//n 只鸭子分布在同一个半圆中的概率就是 n*2^(1−n)。
//求逆元 inva≡a^(p−2)(mod p)→ 费马小定理
typedef long long ll;
const int N=1e5+5;
const int maxn=5e3+5;
const ll mod=1e9+7;ll power(ll a, ll k) {ll b=1;while(k) {if(k&1) b=b*a%mod;a=a*a%mod;k>>=1;}return b%mod;
}int main() {int t;ll n;scanf("%d", &t);while(t--) {scanf("%lld", &n);ll res;if(n<=2) res=1;else {//注意看题:最简分数,所以P和Q(即n和temp)要约分ll temp=power(2, n-1);ll g=__gcd(n%mod, temp);n=n%mod/g;temp/=g;res=n*power(temp, mod-2)%mod;}printf("%lld\n", res);}return 0;
}

这篇关于EOJ Monthly 2019.9 (based on September Selection) - D. 站军姿的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/228914

相关文章

Retrieval-based-Voice-Conversion-WebUI模型构建指南

一、模型介绍 Retrieval-based-Voice-Conversion-WebUI(简称 RVC)模型是一个基于 VITS(Variational Inference with adversarial learning for end-to-end Text-to-Speech)的简单易用的语音转换框架。 具有以下特点 简单易用:RVC 模型通过简单易用的网页界面,使得用户无需深入了

ZOJ Monthly, August 2014小记

最近太忙太忙,只能抽时间写几道简单题。不过我倒是明白要想水平提高不看题解是最好的了。 A  我只能死找规律了,无法证明 int a[50002][2] ;vector< vector<int> > gmax , gmin ;int main(){int n , i , j , k , cmax , cmin ;while(cin>>n){/* g

MACS bdgdiff: Differential peak detection based on paired four bedGraph files.

参考原文地址:[http://manpages.ubuntu.com/manpages/xenial/man1/macs2_bdgdiff.1.html](http://manpages.ubuntu.com/manpages/xenial/man1/macs2_bdgdiff.1.html) 文章目录 一、MACS bdgdiff 简介DESCRIPTION 二、用法

Neighborhood Homophily-based Graph Convolutional Network

#paper/ccfB 推荐指数: #paper/⭐ #pp/图结构学习 流程 重定义同配性指标: N H i k = ∣ N ( i , k , c m a x ) ∣ ∣ N ( i , k ) ∣ with c m a x = arg ⁡ max ⁡ c ∈ [ 1 , C ] ∣ N ( i , k , c ) ∣ NH_i^k=\frac{|\mathcal{N}(i,k,c_{

Failed to pull selection解决办法

今天在使用DDMS导出文档到PC端的时候,明明在file explorer里面有文件,导出时候就是失败,出现了“Failed to pull selection”错误。百度了一下,还是重启Eclipse最靠谱。

王立平--Failed to push selection: Read-only file system

往android模拟器导入资源,失败。提示:只读文件、 mnt是只读文件。应点击sdcard,,在导入

【机器学习 sklearn】特征筛选feature_selection

特征筛选更加侧重于寻找那些对模型的性能提升较大的少量特征。 继续沿用Titannic数据集,这次试图通过特征刷选来寻找最佳的特征组合,并且达到提高预测准确性的目标。 #coding:utf-8from __future__ import divisionimport sysreload(sys)sys.setdefaultencoding('utf-8')import timest

Android Studio打开Modem模块出现:The project ‘***‘ is not a Gradle-based project

花了挺长时间处理该问题,特记录如下:1.背景: 在Android studio 下导入一个新增的modem模块,如MPSS.DE.3.1.1\modem_proc\AAA, 目的是看代码方便一些,可以自由搜索各种关键字。但导入该项目时出现了如下错误: The project '***' is not a Gradle-based project.造成的问题: (1) project 下没有代码,而

SIM(Search-based user interest modeling)

导读 我们对电商场景兴趣建模的理解愈发清晰:1. 通过预估目标item的信息对用户过去的行为做search提取和item相关的信息是一个很核心有效的技术。2. 更长的用户行为序列信息对CTR建模是非常有效且珍贵的。从用户的角度思考,我们也希望能关注用户长期的兴趣。但是当前的search方法无论是DIN和DIEN都不允许我们在线对一个超长的行为序列比如1000以上做有效搜索。所以我们的目标就比较明

Segmentation简记-Multi-stream CNN based Video Semantic Segmentation for Automated Driving

创新点 1.RFCN & MSFCN 总结 网络结构如图所示。输入视频得到图像分割结果。 简单粗暴