1 /*
 2  *
 3  *因为是关于对角线对称,所以只需要求解矩形的下半部分在乘以2就可以了
 4  *满足题意的点对的要求是x和y互质,可以使用欧拉函数
 5  *需要注意的是特殊的点对(1,1)(0,1)(1,0)
 6  *这三个需要单独拿出来计算
 7  */
 8 #include <iostream>
 9 using namespace std;
10 long long ans[1010];
11 long long eular(int n)
12 {
13         long long ret=1;
14         for(int i=2;i*i<=n;i++)
15         {
16                 if(n%i==0)
17                 {
18                         ret*=(i-1);
19                         n/=i;
20                         while(n%i==0)
21                         {
22                                 n/=i;
23                                 ret*=i;
24                         }
25                 }
26         }
27         if(n>1)
28                 ret*=n-1;
29         return ret;
30 }
31 void set()
32 {
33         for(int i=2;i<1002;i++)
34                 ans[i]=eular(i);
35 }
36 int main()
37 {
38         int t;
39         cin>>t;
40         set();
41         for(int j=1;j<=t;j++)
42         {
43                 int aim;
44                 long long sum=0;
45                 cin>>aim;
46         
47                 for(int i=2;i<=aim;i++)
48                         sum+=ans[i];
49                 cout<<j<<" "<<aim<<" "<<sum*2+3<<endl;
50         }
51 }

转载于:https://www.cnblogs.com/congzc/archive/2011/05/22/2329949.html

POJ_3090.Visible Lattice Points相关推荐

  1. Visible Lattice Points SPOJ - VLATTICE

    Visible Lattice Points SPOJ - VLATTICE 题意: 有一个n∗n∗n的三维直角坐标空间,问从(0,0,0)看能看到几个点. 题解: 本题是二维的一个升级版,升级成三维 ...

  2. poj 3090 Visible Lattice Points(离线打表)

    这是好久之前做过的题,算是在考察欧拉函数的定义吧. 先把欧拉函数讲好:其实欧拉函数还是有很多解读的.emmm,最基础同时最重要的算是,¢(n)表示范围(1, n-1)中与n互质的数的个数 好了,我把规 ...

  3. POJ 3090 Visible Lattice Points 【欧拉函数】

    <题目链接> 题目大意: 给出范围为(0, 0)到(n, n)的整点,你站在(0,0)处,问能够看见几个点. 解题分析: 很明显,因为 N (1 ≤ N ≤ 1000) ,所以无论 N 为 ...

  4. POJ 3090 (欧拉函数) Visible Lattice Points

    题意: UVa 10820 这两个题是同一道题目,只是公式有点区别. 给出范围为(0, 0)到(n, n)的整点,你站在原点处,问有多少个整点可见. 对于点(x, y), 若g = gcd(x, y) ...

  5. SPOJ-VLATTICE Visible Lattice Points-莫比乌斯反演

    需要将问题分解一下. 我们需要求的是这个立方体从(0,0,0)能看到的点的个数.可是在三个含有(0,0,0)的面上我们没有办法和其他的一起进行分析(因为含有坐标是0,而我们的数论工具都是从1开始的), ...

  6. 莫比乌斯反演 做题记录

    来自Peterwuyihong 的题单. 前置知识 前置芝士1 数论分块 UVA11526 H(n) P2261 [CQOI2007]余数求和 P2260 [清华集训2012]模积和 其中有一个式子需 ...

  7. 数论 —— 欧拉函数

    [定义] 对正整数 n,欧拉函数是小于等于 n 的数中与 n 互质的数的个数,记作: 例如:,因为 1.3.5.7 均与 8 互质. [性质] 1)若 n 为一素数 p,则: 2)若 n 为一素数 p ...

  8. HOJ题目分类//放这儿没事刷刷学算法!嘻嘻!

    各种杂题,水题,模拟,包括简单数论. 1001 A+B 1002 A+B+C 1009 Fat Cat 1010 The Angle 1011 Unix ls 1012 Decoding Task 1 ...

  9. 信息学奥赛数学一本通 数论相关题目

    ​[数论]教堂 [数论]教堂_LZK1997的博客-CSDN博客 [数论]教堂_AKone123456的博客-CSDN博客 [数论]密码 [数论]密码_)NCuyALnA$Ke的博客-CSDN博客 [ ...

最新文章

  1. nsdata是java什么类型_Swift中基本数据类型与NSData转换
  2. 瑞星08试用版到期了,下面装个什么杀毒软件比较好呢?
  3. python——输入输出
  4. 【转】ABP源码分析三:ABP Module
  5. 组合式应用新利器,事件网格“出圈”
  6. 阶段1 语言基础+高级_1-3-Java语言高级_05-异常与多线程_第3节 线程同步机制_4_解决线程安全问题_同步代码块...
  7. 免费CSDN积分获取
  8. mysql导入mdb_mysql导入数据库.mdb
  9. 非标自动化PLC编程设计
  10. 魔板游戏java_java魔板游戏 动物换位 俄罗斯方块
  11. 资料分析-第一章-统计术语
  12. 融资融券开户超干货学习!
  13. 使用 backdoor 工具注入ShellCode
  14. 使用Hooks实现防抖节流 TS版本
  15. 令人心动的HTTP知识点大全
  16. uniapp开发APP之真机调试
  17. Ubuntu 微信QQ企业微信不能输入中文
  18. JAVA压缩之LZW算法字典压缩与解压
  19. 北大90后数学天才韦东奕又火上热搜,被曝一晚上解决博士团队4个月难题
  20. ubuntu 20 minitool 依赖qt4 安装

热门文章

  1. python django mysql_python测试开发django-10.django连接mysql
  2. ios mysql注册登录界面_iOS学习2:创建属于自己的页面,自定义初始界面
  3. python全文检索框架_全文检索框架haystack和搜索引擎whoosh的使用
  4. linux文件乱码crt,Linux中文文件显示乱码或Secure CRT显示乱码解决方案
  5. matlab图形标注名称_matlab入门(三)图像可视化
  6. vba单元格批量赋值_「经验」快速学习VBA
  7. python微信点赞脚本_你写过的最好的 Python 脚本是什么?
  8. 梳子刻字刻什么好_石阶上被刻了1700多个汉字,网友狂赞!
  9. 2020年使用最多的大数据分析工具
  10. 机器学习算法与Python实践之逻辑回归(Logistic Regression)