博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
hdu 5430 Reflect (数学推导题)
阅读量:5068 次
发布时间:2019-06-12

本文共 1338 字,大约阅读时间需要 4 分钟。

Problem Description

We send a light from one point on a mirror material circle,it reflects N times and return the original point firstly.Your task is calcuate the number of schemes.![](../../data/images/C628-1004-1.jpg)

 

 
Input
First line contains a single integer T(T≤10) which denotes the number of test cases. For each test case, there is an positive integer N(N≤106).

 

 
Output
For each case, output the answer.

 

 
Sample Input
1 4

 

 
Sample Output
4

 

 
Source
 
 
对应中文题目
问题描述
从镜面材质的圆上一点发出一道光线反射NNN次后首次回到起点。 问本质不同的发射的方案数。
输入描述
第一行一个整数T,表示数据组数。T≤10T \leq 10T≤10 对于每一个组,共一行,包含一个整数,表示正整数N(1≤N≤106)N(1 \leq N \leq 10^{6})N(1≤N≤106)。
输出描述
对于每一个组,输出共一行,包含一个整数,表示答案。
输入样例
14
输出样例
4 来自官方题解
 
 
1 #include
2 #include
3 #include
4 #include
5 #include
6 #include
7 using namespace std; 8 #define ll long long 9 ll n;10 ll eular(ll n)11 {12 ll res=1;13 for(ll i=2;i*i<=n;i++)14 {15 if(n%i==0)16 {17 n/=i,res*=i-1;18 while(n%i==0)19 {20 n/=i;21 res*=i;22 }23 }24 }25 if(n>1) res*=n-1;26 return res;27 }28 int main()29 {30 int t;31 scanf("%d",&t);32 while(t--){33 scanf("%I64d",&n);34 ll ans=eular(n+1);35 printf("%I64d\n",ans);36 }37 return 0;38 }
View Code

 

转载于:https://www.cnblogs.com/UniqueColor/p/4784817.html

你可能感兴趣的文章
java编写提升性能的代码
查看>>
ios封装静态库技巧两则
查看>>
Abstract Factory Pattern
查看>>
C# 实现Bresenham算法(vs2010)
查看>>
list 容器 排序函数.xml
查看>>
Activity启动过程中获取组件宽高的五种方式
查看>>
SQLite数据库简介
查看>>
利用堆实现堆排序&amp;优先队列
查看>>
Mono源码学习笔记:Console类(四)
查看>>
《Genesis-3D开源游戏引擎完整实例教程-跑酷游戏篇03:暂停游戏》
查看>>
CPU,寄存器,一缓二缓.... RAM ROM 外部存储器等简介
查看>>
windows下编译FreeSwitch
查看>>
git .gitignore 文件不起作用
查看>>
Alan Turing的纪录片观后感
查看>>
c#自定义控件中的事件处理
查看>>
django Models 常用的字段和参数
查看>>
IOS--沙盒机制
查看>>
使用 JointCode.Shuttle 访问任意 AppDomain 的服务
查看>>
sqlite的坑
查看>>
digitalocean --- How To Install Apache Tomcat 8 on Ubuntu 16.04
查看>>