冬令营 Winter Camp数学专题
Posted ZSYL
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了冬令营 Winter Camp数学专题相关的知识,希望对你有一定的参考价值。
【冬令营 Winter Camp】数学专题
A - A^B Mod C
思路:这个题目首先能想到暴力,但是数据太大,所以不现实,因此用快速幂来解决,具体看上述链接。
#include <bits/stdc++.h>
using namespace std;
typedef long long int ll;
typedef pair<ll, ll> P;
const int maxn = 10010;
const int inf = 0x3f3f3f3f3f;
const int maxm = 5e4+5;
const int mod = 1000000007;
ll pmod(ll a, ll b, ll c)
ll res = 1;
while (b)
if (b & 1)
res = (res * a) % c;
b >>= 1;
a = a * a % c;
return res;
ll normalPower(ll a, ll b, ll c)
ll res = 1;
while (b--)
res *= a;
res %= c;
return res % c;
int main()
ll a, b, c;
cin >> a >> b >> c;
// cout << pmod(a, b, c);
cout << normalPower(a, b, c);
return 0;
B - 逆元
除以一个数再取模等同于乘以这个数的逆元再取模
思路:本身是直接进行求解逆元的,但是超时。就看了看网上的题解,链接如下:题解
#include <iostream>
using namespace std;
typedef long long ll;
ll inv(ll a, ll mod)
return a == 1 ? 1 : (mod-mod/a) * inv(mod%a, mod) % mod;
bool isPrime(ll x)
for (int i = 2; i*i <= x; i++)
if (x % i == 0)
return 0;
return 1;
int main()
ll p;
while (cin >> p)
if (!isPrime(p))
cout << "AKCniubi" << endl;
else
cout << (p-1)*p/2 << endl;
return 0;
- 忘了是.什么时候的文稿,没有整理完毕!加油!
以上是关于冬令营 Winter Camp数学专题的主要内容,如果未能解决你的问题,请参考以下文章
冬令营Winter Camp字符串专题(Triple语言版)