SPOJ 7001 Visible Lattice Points(莫比乌斯反演)

2024-06-01 18:38

本文主要是介绍SPOJ 7001 Visible Lattice Points(莫比乌斯反演),希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

莫比乌斯反演,注意0的情况特殊考虑下就可以了

#include <cstdio>
#include <cstring>
#include <algorithm>
using namespace std;const int N = 1000005;int mo[N], prime[N], pn;
bool vis[N];void Moblus() {memset(vis, false, sizeof(vis));mo[1] = 1; pn = 0;for(int i = 2; i < N; i++) {if(!vis[i]) {prime[pn++] = i;mo[i] = -1;}for(int j = 0; j < pn; j++) {if(i * prime[j] >= N) break;vis[i * prime[j]] = true;if(i % prime[j] == 0) {mo[i * prime[j]] = 0;break;} else mo[i * prime[j]] = -mo[i];}}
}typedef long long ll;int t, n;int main() {Moblus();scanf("%d", &t);while (t--) {scanf("%d", &n);ll ans = 3;for (int i = 1; i <= n; i++) {ans += (ll)mo[i] * (n / i) * (n / i) * (n / i);ans += (ll)mo[i] * (n / i) * (n / i) * 3;}printf("%lld\n", ans);}return 0;
}


这篇关于SPOJ 7001 Visible Lattice Points(莫比乌斯反演)的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



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

相关文章

hdu6053 TrickGCD 莫比乌斯反演

TrickGCD Time Limit: 5000/2500 MS (Java/Others)    Memory Limit: 262144/262144 K (Java/Others) Problem Description You are given an array  A  , and Zhu wants to know there are how many d

【SPOJ】1825 Free tour II 点分治

传送门:【SPOJ】1825 Free tour II 题目分析:敲了两遍。。。 本题是论文题,具体见漆子超论文《分治算法在树的路径问题中的应用》。 在以root为根的第 i 棵子树上,我们用G[ i ,j ]表示root的第 i 棵子树的路径上严格有 j 个黑点的路径的最长长度。用F[ i ,j ]表示在root为根的第 i 棵子树的路径上不超过 j 个黑点的路径的最长长度。因

【SPOJ】Triple Sums【FFT】

传送门:【SPOJ】Triple Sums 题目分析: 首先我们不考虑 i<j<k i<j<k这个条件,构造多项式: Y=∑xai \qquad\qquad\qquad Y = \sum x^{a_i} 那么 ai+aj+ak=S ai+aj+ak=S的个数即 xai+aj+ak=S x^{a_i+a_j+a_k=S}的个数,等价于 Y3中xS Y^3中x^S的系数。 然后我们考虑容斥

C# 使用中点查找矩形的角(Find Corners of Rectangle using mid points)

考虑一个矩形 ABCD,我们给出了边 AD 和 BC 中点(分别为 p 和 q)的坐标以及它们的长度 L(AD = BC = L)。现在给定参数,我们需要打印 4 个点 A、B、C 和 D 的坐标。 例子:  输入:p = (1, 0)         q = (1, 2)         L = 2 输出:(0,0),(0,2),(2,2),(2,0) 解释: 打

学习笔记 ---- 莫比乌斯反演总结

文章目录 概述前置知识数论分块狄利克雷卷积积性函数 莫比乌斯函数定义性质 莫比乌斯反演因子形式倍数形式 例题周期性字符串互质数对[NOI2010D1T1]能量采集BZOJ2820 YY的GCD[SDOI2015] 约数个数和BZOJ4407 于神之怒加强版【BZOJ2693】jzptab最小公倍数之和[bzoj3529-Sdoi2014] 数表 练习题51nod 1675 序列变换BZOJ3

【译】PCL官网教程翻译(18):估计一组点的视点特征直方图(VFH)签名 - Estimating VFH signatures for a set of points

英文原文查看 估计一组点的视点特征直方图(VFH)签名 本文描述了视点特征直方图([VFH])描述符,这是一种针对聚类(如对象)识别和6DOF姿态估计问题的点簇表示方法。 下图展示了一个VFH识别和姿态估计的例子。给定一组火车数据(除最左边的点云外,最上面一行、最下面一行),学习一个模型,然后使用一个云(最左边的部分)查询/测试模型。匹配的结果按从最好到最差的顺序从左到右从左下角开始。有关更多

【SPOJ】【AGGRCOW】

总结:函数之间存在依赖。  然后一处修改了但是忘记修改另外的一处了。。。 #include <iostream>#include <cstring>#include <cmath>#include <queue>#include <stack>#include <list>#include <map>#include <set>#include <string>#inclu

On Segment's Own Points(可用区间长度)

题目连接:http://acm.hust.edu.cn/vjudge/contest/view.action?cid=42180#problem/A 思路一: 排序合并,但是比较繁琐 代码: #include<iostream> #include<cstdio> #include<algorithm> using namespace std; int n,l,r; struct node

BZOJ 2440 2301 莫比乌斯应用

http://www.lydsy.com/JudgeOnline/problem.php?id=2440 Description 小 X 自幼就很喜欢数。但奇怪的是,他十分讨厌完全平方数。他觉得这些 数看起来很令人难受。由此,他也讨厌所有是完全平方数的正整数倍的数。然而 这丝毫不影响他对其他数的热爱。  这天是小X的生日,小 W 想送一个数给他作为生日礼物。当然他不能送一 个小X讨厌

Codeforces Round #331 (Div. 2)C. Wilbur and Points(模拟+STL)

题目链接 题意:就是给出一组点,然后问如果Xa>=Xb&&Ya>=Yb的话,那么a点的编号必须必b点大,同时,点的权值要满足给出的w序列。 解法:先判断给出的w,与点的w的是不是能完全重合,不能的话就是no 然后,我们就按照给出的w顺序找出点的顺序,然后判断一下即可 AAA:比赛时候貌似又读错了题意,,昨天状态太差。。。 #include<bits/stdc++.h>using na