LOJ#2085 循环之美】的更多相关文章

解:首先看这个纯循环到底是什么玩意..... 经过一番打表,发现纯循环小数就是分母与进制互质的既约分数. #include <bits/stdc++.h> std::bitset<> vis; inline bool check(int x, int y) { /// x / y //printf("x = %d y = %d \n", x, y); vis.reset(); int rest = x % y; if(!rest) return true; in…
题目传送门:LOJ #2085. 两个月之前做的傻题,还是有必要补一下博客. 题意简述: 求分子为不超过 \(n\) 的正整数,分母为不超过 \(m\) 的正整数的所有互不相等的分数中,有多少在 \(k\) 进制下的纯循环小数. 题解: 设分子为 \(x\),分母为 \(y\). 首先,因为要求的是互不相等的分数,取最简分数,即 \(x\perp y\). 其次,要求是纯循环小数,考虑竖式除法的过程,可以发现 \(\displaystyle\frac{x}{y}\) 在 \(k\) 进制下纯循环…
题目链接:循环之美 这道题感觉非常优美--能有一个这么优美的题面和较高的思维难度真的不容易-- 为了表示方便,让我先讲一下两个符号.\([a]\)表示如果\(a\)为真,那么返回\(1\),否则返回\(0\): \(a \perp b\)表示\(a\)与\(b\)互质. 首先,我们需要考虑一个分数要成为纯循环小数需要满足什么条件. 我们先来回想一下,我们是怎样使用除法来判断一个分数$\frac{x}{y}$是否是纯循环小数的.显然我们是一路除下去,什么时候出现了相同的余数,那么这个数就是一个循环…
[BZOJ4652]循环之美(莫比乌斯反演,杜教筛) 题解 到底在求什么呢... 首先不管他\(K\)进制的问题啦,真是烦死啦 所以,相当于有一个分数\(\frac{i}{j}\) 因为值要不相等 所以有\(i \perp j\),也就是\(gcd(i,j)=1\) 现在考虑\(K\)进制 先从熟悉的\(10\)进制入手 如果一个最简分数是纯循环小数 我们知道,他的分母里面不含\(2,5\) 而且,巧极了\(10=2*5\) 于是乎,\(YY\)一下 如果\(K\)进制中一个分数是纯循环小数 那…
Portal Description 给出\(n,m(n,m\leq10^9)\)和\(k(k\leq2000)\),求在\(k\)进制下,有多少个数值不同的纯循环小数可以表示成\(\dfrac{x}{y}\)的形式,其中\(x\in[1,n],y\in[1,m]\).一个数是纯循环小数当且仅当它能写成\(a.\dot{c_1} c_2 c_3 \ldots c_{p-1}\dot{c_p}\)的形式. Solution 原题相当于求有多少个数对\((x,y)\)满足\(gcd(x,y)=1\)…
[UOJ#221][BZOJ4652][Noi2016]循环之美 试题描述 牛牛是一个热爱算法设计的高中生.在他设计的算法中,常常会使用带小数的数进行计算.牛牛认为,如果在 k 进制下,一个数的小数部分是纯循环的,那么它就是美的.现在,牛牛想知道:对于已知的十进制数 n 和 m,在 k 进制下,有多少个数值上互不相等的纯循环小数,可以用分数 x/y 表示,其中 1≤x≤n,1≤y≤m,且 x,y是整数.一个数是纯循环的,当且仅当其可以写成以下形式:a.c1˙c2c3…cp-1cp˙其中,a 是一…
P1587 [NOI2016]循环之美 题目描述 牛牛是一个热爱算法设计的高中生.在他设计的算法中,常常会使用带小数的数进行计算.牛牛认为,如果在 $k$ 进制下,一个数的小数部分是纯循环的,那么它就是美的.现在,牛牛想知道:对于已知的十进制数 $n$ 和 $m$,在 $k$ 进制下,有多少个数值上互不相等的纯循环小数,可以用分数 $\frac xy$ 表示,其中 $1≤x≤n,1≤y≤m$,且 $x,y$是整数.一个数是纯循环的,当且仅当其可以写成以下形式: $a.\dot{c_1} c_2…
「NOI2016」循环之美 对于小数\(\frac{a}{b}\),如果它在\(k\)进制下被统计,需要满足要求并且不重复. 不重复我们确保这个分数是最简分数即\((a,b)=1\) 满足要求需要满足第一位的余数在后面仍然出现,第一位余数是\(a\bmod b\),后面第\(x\)位的余数实际上是\(a\times k^x\bmod b\) 所以我们需要满足 \[ a\equiv a \times k^x\pmod b \] 有解 因为\((a,b)=1\),所以 \[ k^x\equiv 1\…
LINK:NOI2016循环之美 这道题是 给出n m k 求出\(1\leq i\leq n,1\leq j\leq m\) \(\frac{i}{j}\)在k进制下是一个纯循环的. 由于数值相同的分数不能记录 所以 \((i,j)==1\) 对于是一个纯循环的数我们先从最熟悉的10进制下说起. 可以发现\(\frac{1}{7},\frac{1}{13}\)等等都是纯循环的 而\(\frac{1}{6},\frac{1}{4}\)等等非纯循环. 于是可以发现 当j和10互质的时候此时是纯循环…
$n \leq 1e9,m \leq 1e9,k \leq 2000$,求$k$进制下$\frac{x}{y}$有多少种不同的纯循环数取值,$1 \leq x \leq n,1 \leq y \leq m$.纯循环数是指小数点后直接就开始循环,整数也算. 与上个题的丑陋相比这个题不知道美到哪里去..虽然自己没想出来. 提示说了,出现相同余数时有纯循环.假设循环节是$l$,那么$xk^l$和$x$除$y$会得到相同余数--同余!$xk^l \equiv x (\mod y)$.由于题目要互不相同的…