题解:P12312 [蓝桥杯 2024 国 C] 六一儿童节
一些闲话:
关于题解:
这是一个数论并不好的人的暴力题解,只用了最简单的组合和取模,适合不喜欢数学的同学食用。
一些私货:
膜拜神犇 Hootime 和 TA 的 npy chenyuexiC2026。
思路:
要求 这是一道输出答案题。\
令
代码:
#include <bits/stdc++.h>
using namespace std;
#define p 6421
#define int long long
int mi[20240605],tong[6425],ans;
int Fastpow(int a,int b){//快速幂
int sum = 1;
a = a % p;
while(b > 0){
if(b & 1) sum = (sum * a) % p;
a = (a * a) % p;
b = b >> 1;
}
return sum % p;
}
signed main(){
for(int i = 1;i <= 20240601;++i) mi[i] = Fastpow(i,i);
for(int i = 1;i <= 20240601;++i){
ans += tong[(6421-mi[i]) % p];
++tong[mi[i]];
}
cout << ans;
return 0;
}
虽然理论会超时,但直接用这段代码其实也能 AC。
答案:
#include <bits/stdc++.h>
using namespace std;
int main(){
cout << "51349141107";
return 0;
}