社区讨论
CE 求调
CF1029DConcatenated Multiples参与者 2已保存回复 2
讨论操作
快速查看讨论及其快照的属性,并进行相关操作。
- 当前回复
- 2 条
- 当前快照
- 1 份
- 快照标识符
- @mibp7x5m
- 此快照首次捕获于
- 2025/11/23 20:33 3 个月前
- 此快照最后确认于
- 2025/11/23 21:20 3 个月前
CPP
#include <iostream>
#include <algorithm>
#include <cmath>
#include <cstring>
#include <unordered_map>
#define int __int128
using namespace std;
int T = 1,n,m,k,a[200005],b[200005],c[200005],gen[2000005];
string s,t[100005];
unordered_map<int,int>mp[20];
long long N;
void slove()
{
int ans = 0;
cin >> N,n = N;
cin >> N,m = N;
for(int i = 1;i <= n;i ++)
{
cin >> N,a[i] = N;gen[i] = 1;
int dd = a[i],len = 0;
while(dd > 0)
len ++,dd /= 10,gen[i] *= 10;
mp[len][a[i] % m] ++;
}
for(int i = 1;i <= n;i ++)
{
int cnt = 1;
for(int j = 1;j <= 10;j ++)
{
cnt *= 10;
int qe = a[i] * cnt % m;
if(qe == 0)ans += mp[j][0];
else ans += mp[j][m - qe];
}
if((gen[i] * a[i] % m + a[i] % m) % m == 0)ans --;
}
cout << (long long)ans;
}
signed main()
{
//cin >> T;
while(T --)slove();
}
在AT的双倍经验是直接过了的,改了一点在这CE了,然而样例在AT的Custom Test能全过
回复
共 2 条回复,欢迎继续交流。
正在加载回复...