提出 #10623112
ソースコード 拡げる
#include<bits/stdc++.h>
using namespace std;
using ll=long long;
#define fr(i,n) for(int i=0;i<(n);++i)
#define Fr(i,n) for(int i=1;i<=(n);++i)
#define ifr(i,n) for(int i=(n)-1;i>=0;--i)
#define iFr(i,n) for(int i=(n);i>0;--i)
int main(){
cin.tie(nullptr);
ios::sync_with_stdio(false);
istream& in(cin);
ostream& out(cout);
int n,p;
string s;
in>>n>>p>>s;
if(p==2||p==5){
ll ans{};
fr(i,n){
if((s[i]-'0')%p==0){
ans+=i+1;
}
}
cout<<ans<<endl;
return 0;
}
int tmp{1};
ll ans{};
vector<int> V(n+1),v(p);
fr(i,n){
V[i+1]=V[i]*10+s[i]-'0';
V[i+1]%=p;
}
ifr(i,n+1){
ans+=v[(V[i]*tmp)%p]++;
tmp*=10;
tmp%=p;
}
cout<<ans<<endl;
}
提出情報
| 提出日時 | |
|---|---|
| 問題 | E - Divisible Substring |
| ユーザ | Motsu_xe |
| 言語 | C++14 (GCC 5.4.1) |
| 得点 | 500 |
| コード長 | 854 Byte |
| 結果 | AC |
| 実行時間 | 6 ms |
| メモリ | 1428 KiB |
ジャッジ結果
| セット名 | Sample | All | ||||
|---|---|---|---|---|---|---|
| 得点 / 配点 | 0 / 0 | 500 / 500 | ||||
| 結果 |
|
|
| セット名 | テストケース |
|---|---|
| Sample | s1.txt, s2.txt, s3.txt |
| All | 01.txt, 02.txt, 03.txt, 04.txt, 05.txt, 06.txt, 07.txt, 08.txt, 09.txt, 10.txt, 11.txt, 12.txt, 13.txt, 14.txt, 15.txt, 16.txt, 17.txt, 18.txt, 19.txt, 20.txt, 21.txt, 22.txt, 23.txt, 24.txt, 25.txt, 26.txt, 27.txt, 28.txt, 29.txt, 30.txt, 31.txt, 32.txt, 33.txt, 34.txt, 35.txt, 36.txt, 37.txt, 38.txt, 39.txt, 40.txt, 41.txt, s1.txt, s2.txt, s3.txt |
| ケース名 | 結果 | 実行時間 | メモリ |
|---|---|---|---|
| 01.txt | AC | 1 ms | 256 KiB |
| 02.txt | AC | 1 ms | 256 KiB |
| 03.txt | AC | 1 ms | 256 KiB |
| 04.txt | AC | 1 ms | 256 KiB |
| 05.txt | AC | 1 ms | 256 KiB |
| 06.txt | AC | 1 ms | 256 KiB |
| 07.txt | AC | 1 ms | 256 KiB |
| 08.txt | AC | 1 ms | 256 KiB |
| 09.txt | AC | 1 ms | 256 KiB |
| 10.txt | AC | 1 ms | 256 KiB |
| 11.txt | AC | 1 ms | 256 KiB |
| 12.txt | AC | 1 ms | 256 KiB |
| 13.txt | AC | 1 ms | 256 KiB |
| 14.txt | AC | 1 ms | 256 KiB |
| 15.txt | AC | 1 ms | 256 KiB |
| 16.txt | AC | 1 ms | 256 KiB |
| 17.txt | AC | 1 ms | 384 KiB |
| 18.txt | AC | 1 ms | 256 KiB |
| 19.txt | AC | 1 ms | 256 KiB |
| 20.txt | AC | 1 ms | 256 KiB |
| 21.txt | AC | 6 ms | 1428 KiB |
| 22.txt | AC | 6 ms | 1428 KiB |
| 23.txt | AC | 6 ms | 1428 KiB |
| 24.txt | AC | 6 ms | 1300 KiB |
| 25.txt | AC | 6 ms | 1300 KiB |
| 26.txt | AC | 3 ms | 720 KiB |
| 27.txt | AC | 3 ms | 720 KiB |
| 28.txt | AC | 3 ms | 720 KiB |
| 29.txt | AC | 3 ms | 720 KiB |
| 30.txt | AC | 2 ms | 720 KiB |
| 31.txt | AC | 2 ms | 720 KiB |
| 32.txt | AC | 3 ms | 720 KiB |
| 33.txt | AC | 6 ms | 1300 KiB |
| 34.txt | AC | 3 ms | 720 KiB |
| 35.txt | AC | 6 ms | 1300 KiB |
| 36.txt | AC | 6 ms | 1428 KiB |
| 37.txt | AC | 6 ms | 1428 KiB |
| 38.txt | AC | 6 ms | 1428 KiB |
| 39.txt | AC | 6 ms | 1428 KiB |
| 40.txt | AC | 6 ms | 1300 KiB |
| 41.txt | AC | 1 ms | 256 KiB |
| s1.txt | AC | 1 ms | 256 KiB |
| s2.txt | AC | 1 ms | 256 KiB |
| s3.txt | AC | 1 ms | 256 KiB |