| 10625 | 2024-04-06 23:46:17 | 111 | Tömbök előállítása | cpp17 | Futási hiba 52/100 | 532ms | 5424 KiB |
#include<bits/stdc++.h>
using namespace std;
#define int long long
#define MOD 1000000007
using vec=array<int,100>;
using mat=array<array<int,100>,100>;
mat operator*(mat a,mat b){
mat r{};
for(int i=0;i<100;i++){
for(int j=0;j<100;j++){
for(int k=0;k<100;k++){
r[i][j]+=a[i][k]*b[k][j];
r[i][j]%=MOD;
}
}
}
return r;
}
vec operator*(vec a,mat b){
vec r{};
for(int i=0;i<100;i++){
for(int j=0;j<100;j++){
r[i]+=r[j]*b[i][j];
r[i]%=MOD;
}
}
return r;
}
mat mat_pow(mat x,int p){
mat r{};
for(int i=0;i<100;i++){
r[i][i]=1;
}
while(p){
if(p&1){
r=r*x;
}
x=x*x;
p>>=1;
}
return r;
}
signed main(){
ios::sync_with_stdio(false);
cin.tie(nullptr);
int N,M,L,R,K;
cin>>N>>M>>L>>R>>K;
vector<int>v(M);
for(int i=0;i<M;i++){
int s=L%M>i?L/M:L/M-1;
int e=R%M<i?R/M-1:R/M;
v[i]=e-s;
}
mat x{};
for(int i=0;i<M;i++){
for(int j=0;j<M;j++){
x[i][j]=v[(j-i+M)%M];
}
}
mat ans{};
ans[0][0]=1;
ans=ans*mat_pow(x,N);
cout<<ans[0][K]<<'\n';
return 0;
}
| Részfeladat | Összpont | Teszt | Verdikt | Idő | Memória | ||
|---|---|---|---|---|---|---|---|
| subtask1 | 0/0 | ||||||
| 1 | Elfogadva | 26ms | 2964 KiB | ||||
| 2 | Elfogadva | 30ms | 3252 KiB | ||||
| 3 | Elfogadva | 64ms | 3692 KiB | ||||
| subtask2 | 10/10 | ||||||
| 4 | Elfogadva | 30ms | 3760 KiB | ||||
| 5 | Elfogadva | 30ms | 3988 KiB | ||||
| 6 | Elfogadva | 30ms | 4092 KiB | ||||
| subtask3 | 10/10 | ||||||
| 7 | Elfogadva | 70ms | 4116 KiB | ||||
| 8 | Elfogadva | 93ms | 4496 KiB | ||||
| 9 | Elfogadva | 86ms | 4732 KiB | ||||
| 10 | Elfogadva | 115ms | 5036 KiB | ||||
| 11 | Elfogadva | 109ms | 4760 KiB | ||||
| 12 | Elfogadva | 109ms | 4712 KiB | ||||
| 13 | Elfogadva | 115ms | 4720 KiB | ||||
| subtask4 | 7/7 | ||||||
| 14 | Elfogadva | 115ms | 4844 KiB | ||||
| 15 | Elfogadva | 120ms | 4860 KiB | ||||
| 16 | Elfogadva | 104ms | 5120 KiB | ||||
| 17 | Elfogadva | 75ms | 5068 KiB | ||||
| 18 | Elfogadva | 82ms | 5076 KiB | ||||
| 19 | Elfogadva | 104ms | 5080 KiB | ||||
| 20 | Elfogadva | 115ms | 5200 KiB | ||||
| subtask5 | 0/8 | ||||||
| 21 | Futási hiba | 4ms | 4616 KiB | ||||
| 22 | Futási hiba | 4ms | 4812 KiB | ||||
| 23 | Futási hiba | 4ms | 4636 KiB | ||||
| 24 | Futási hiba | 4ms | 4720 KiB | ||||
| 25 | Hibás válasz | 76ms | 5236 KiB | ||||
| 26 | Hibás válasz | 64ms | 5236 KiB | ||||
| 27 | Futási hiba | 4ms | 4656 KiB | ||||
| 28 | Hibás válasz | 93ms | 5252 KiB | ||||
| 29 | Futási hiba | 4ms | 4812 KiB | ||||
| 30 | Futási hiba | 4ms | 4780 KiB | ||||
| subtask6 | 25/25 | ||||||
| 31 | Elfogadva | 481ms | 5372 KiB | ||||
| 32 | Elfogadva | 481ms | 5268 KiB | ||||
| 33 | Elfogadva | 532ms | 5280 KiB | ||||
| 34 | Elfogadva | 515ms | 5284 KiB | ||||
| 35 | Elfogadva | 250ms | 5292 KiB | ||||
| 36 | Elfogadva | 261ms | 5292 KiB | ||||
| 37 | Elfogadva | 481ms | 5296 KiB | ||||
| 38 | Elfogadva | 284ms | 5300 KiB | ||||
| 39 | Elfogadva | 289ms | 5308 KiB | ||||
| 40 | Elfogadva | 509ms | 5424 KiB | ||||
| subtask7 | 0/40 | ||||||
| 41 | Futási hiba | 4ms | 4720 KiB | ||||
| 42 | Futási hiba | 7ms | 4880 KiB | ||||
| 43 | Futási hiba | 7ms | 4844 KiB | ||||
| 44 | Futási hiba | 7ms | 4740 KiB | ||||
| 45 | Futási hiba | 7ms | 4744 KiB | ||||
| 46 | Futási hiba | 6ms | 4960 KiB | ||||
| 47 | Futási hiba | 6ms | 4888 KiB | ||||
| 48 | Elfogadva | 312ms | 5412 KiB | ||||
| 49 | Futási hiba | 6ms | 4984 KiB | ||||
| 50 | Futási hiba | 4ms | 4952 KiB | ||||