QOJ.ac

QOJ

IDProblemSubmitterResultTimeMemoryLanguageFile sizeSubmit timeJudge time
#805292#9568. Left Shifting 3victoryAC#AC ✓1ms7336kbC++172.9kb2024-12-08 15:27:032024-12-08 15:27:03

Judging History

你现在查看的是最新测评结果

  • [2024-12-08 15:27:03]
  • 评测
  • 测评结果:AC
  • 用时:1ms
  • 内存:7336kb
  • [2024-12-08 15:27:03]
  • 提交

answer

#include <bits/stdc++.h>
using namespace std;
#define int long long
#define ios ios::sync_with_stdio(0),cin.tie(0),cout.tie(0)
#define pos string::npos
#define endl '\n'
#define inf 1e18
typedef unsigned long long ull;
const int mod = 1e9+7;
const int N = 1e6+10;
const int Maxn = 2e5+5;
template<class T>inline void read(T &res)
{
char c;T flag=1;
while((c=getchar())<'0'||c>'9')if(c=='-')flag=-1;res=c-'0';
while((c=getchar())>='0'&&c<='9')res=res*10+c-'0';res*=flag;
}
int min(int a,int b){return a<b?a:b;}
int max(int a,int b){return a>b?a:b;}
int Inv[N],F[N];//组合数C2
int gcd(int a,int b){ return b == 0 ? a : gcd(b,a%b);}
int lcm(int a,int b){return (a/gcd(a,b)*b);}
int km(int a,int b,int mod)
{int ans=1;while(b){if(b&1) ans=ans*a%mod;b>>=1;a=a*a%mod;}return ans;}
int km1(int a,int b,int mod)//指数取模,2^2^i,单求2^i要取模MOD-1
{int ans=1;mod--;while(b){if(b&1) ans=ans*a%mod;b>>=1;a=a*a%mod;}return ans;}
int C(int a,int b,int p){if(b>a) return 0;int res=1;for(int i=b,j=a;i>=1;i--,j--){res=res*j%p;res=res*km(i,p-2,p)%p;}return res;}
int Lucas(int a,int b,int p){if(a<p&&b<p) return C(a,b,p);return C(a%p,b%p,p)*Lucas(a/p,b/p,p)%p;}
int C2(int a,int b,int p){return F[a]*Inv[a-b]%p*Inv[b]%p;}
void C2init(int n,int p){n--;F[0]=F[1]=1;for(int i=2;i<=n;i++)F[i]=F[i-1]*i%p;Inv[n]=km(F[n],p-2,p);for(int i=n-1;i>=0;i--)Inv[i]=Inv[i+1]*(i+1)%p;}
int dx[]={1,-1,0,0},dy[]={0,0,1,-1};
typedef pair<int,int> pii;
typedef pair<double,double> pdd;
struct edge{
    int v,w;
};
struct matrix{
    int c[5][5];
    matrix(){memset(c,0,sizeof c);}
}A,B;
matrix operator*(matrix &x,matrix &y){
    matrix t;
    for(int i=1;i<=4;i++){
        for(int j=1;j<=4;j++){
            for(int k=1;k<=4;k++){
                //t.c[i][j]=(t.c[i][j]+mul(x.c[i][k],y.c[k][j]))%m;
                t.c[i][j]=(t.c[i][j]+(x.c[i][k]*y.c[k][j])%mod)%mod;
            }
        }
    }
    return t;
}
void km2(int k){
    while(k){
        if(k&1) A=A*B;
        B=B*B;
        k>>=1;
    }
}
int n,m,k,q,ss[N];
void solve() 
{
    string x="nanjing";
    vector<pii> ve;
    cin>>n>>k;
    for(int i=0;i<=n;i++) ss[i]=0;
    string s;
    cin>>s;
    for(int i=0;i<n;i++){
        if(s[i]=='n'){
            int j=i,cnt=0;
            while(s[j%n]==x[cnt]){
                j++,cnt++;
            }
            if(cnt==x.size()) {
                j=(j-1)%n;
                //cout<<i<<" "<<j<<endl;
                if(i<j) {
                    ss[0]++,ss[i+1]--;
                    ss[i+8]++;
                }
                else{
                    ss[j+1]++,ss[i+1]--;
                }
            }
        }
    }
    int ans=0;
    for(int i=0;i<=min(n,k);i++){
        if(i>=1)ss[i]+=ss[i-1];
        ans=max(ans,ss[i]);
    }
    cout<<ans<<endl;
}
signed main()
{
    ios;
    int T=1;
    //C2init(N,mod);
    cin>>T;
    while(T--)
    {
        solve();
    }
    return 0;
}

这程序好像有点Bug,我给组数据试试?

Details

Tip: Click on the bar to expand more detailed information

Test #1:

score: 100
Accepted
time: 1ms
memory: 5684kb

input:

4
21 10
jingicpcnanjingsuanan
21 0
jingicpcnanjingsuanan
21 3
nanjingnanjingnanjing
4 100
icpc

output:

2
1
3
0

result:

ok 4 number(s): "2 1 3 0"

Test #2:

score: 0
Accepted
time: 0ms
memory: 5748kb

input:

2130
39 7
nnananjingannanjingngnanjinganjinggjina
1 479084228
g
33 2
gqnanjinggrjdtktnanjingcvsenanjin
24 196055605
ginganjingnanjingnanjing
23 3
ngnanjinganjingjinnanji
40 3
njingaaznannanjingnananjingyonwpnanjinga
40 207842908
nanjinggphconanjingkonanjinannanjinglxna
46 3
ingjingnnanjingnanjinging...

output:

3
0
3
2
2
3
3
4
3
4
0
2
4
3
2
1
1
1
4
2
0
3
3
0
0
1
0
0
0
5
4
0
1
2
1
2
2
1
1
1
3
3
1
3
2
0
1
2
4
1
2
1
2
1
2
3
0
1
0
0
1
1
3
2
2
1
0
3
1
2
1
1
4
4
1
1
1
1
0
1
1
1
1
2
0
4
4
3
1
1
2
1
1
1
1
5
1
4
0
1
2
1
3
4
3
3
3
3
1
3
2
1
3
1
2
0
0
1
0
5
0
2
0
3
1
0
2
2
3
2
1
2
0
1
1
1
2
4
1
3
2
0
1
1
2
2
2
1
0
3
...

result:

ok 2130 numbers

Test #3:

score: 0
Accepted
time: 0ms
memory: 7336kb

input:

3
100000 998244353
gbppzfsncqyzmuwrcvtxsciucxusskcjhaanwhqmyncytwhkubrvcqxgcehdxyewdyvpqjcmrnmlgrytrucexmmfulqbtfctehphmrzkosyvhtvjrromqncbgsjcwhmlqidkycaxyhsrduoxayntuhqubvboseeziwjvrfagsbvtxjjbexnajqapgxydwtztzbbdpoydnjipfizdfpmczgqvdmpvxbqubtygkfpdeonegfzsttirbhzkobbigwneyvtcxndfkljdvbbcfnadtfhgo...

output:

4
1649
3651

result:

ok 3 number(s): "4 1649 3651"

Extra Test:

score: 0
Extra Test Passed