bzoj 1008 4029
parent
d5f8ef6bc5
commit
d8e76b882e
@ -0,0 +1,18 @@
|
|||||||
|
#include <cstdio>
|
||||||
|
typedef long long int64;
|
||||||
|
const int MOD = 100003;
|
||||||
|
int fast_pow(int64 a, int64 b)
|
||||||
|
{
|
||||||
|
int64 ans = 1;
|
||||||
|
for (; b; a = (a * a) % MOD, b >>= 1)
|
||||||
|
if (b & 1)
|
||||||
|
ans = (ans * a) % MOD;
|
||||||
|
return ans;
|
||||||
|
}
|
||||||
|
int main()
|
||||||
|
{
|
||||||
|
int64 m, n;
|
||||||
|
scanf("%lld%lld", &m, &n);
|
||||||
|
printf("%lld", (fast_pow(m, n) - (m * fast_pow(m - 1, n - 1)) % MOD + MOD) % MOD);
|
||||||
|
return 0;
|
||||||
|
}
|
||||||
@ -0,0 +1,29 @@
|
|||||||
|
#include <cstdio>
|
||||||
|
inline int calc(int x)
|
||||||
|
{
|
||||||
|
int ret = 0;
|
||||||
|
while (x % 10 == 0) x /= 10;
|
||||||
|
if (x % 5 == 0) ret--;
|
||||||
|
while (x) x /= 10, ret += 2;
|
||||||
|
return ret;
|
||||||
|
}
|
||||||
|
int main()
|
||||||
|
{
|
||||||
|
int n;
|
||||||
|
scanf("%d", &n);
|
||||||
|
while (n--)
|
||||||
|
{
|
||||||
|
int l, r, minn, ans, tmp;
|
||||||
|
scanf("%d%d", &l, &r);
|
||||||
|
minn = calc(ans = l);
|
||||||
|
while (l < r)
|
||||||
|
{
|
||||||
|
int p = 1;
|
||||||
|
while (l % 10 == 0) l /= 10, p *= 10;
|
||||||
|
l = l * p + p;
|
||||||
|
if (l <= r && (tmp = calc(l)) < minn) ans = l, minn = tmp;
|
||||||
|
}
|
||||||
|
printf("%d\n", ans);
|
||||||
|
}
|
||||||
|
return 0;
|
||||||
|
}
|
||||||
Loading…
Reference in new issue