求求大神,为什么样例过了,但提交不对
5921查看
no_AI_no_爱
2025-02-23 19:06

数据量太大,本地VS2022调试不了 关于差分和前缀和

图片描述

#include <iostream>
#include<string>
using namespace std;
const int M=2e5+7;

int main()
{
  int n,q;
  cin >> n >>q;
  char A[M];
  int diff[M];
  for(int i=1;i<=n;i++){
    cin >> A[i];
    diff[i]=(i==1)?A[1]:A[i]-A[i-1];
  }
  while(q--){
    int l,r,k;
    cin >> l >> r >> k;
    diff[l]+=k;
    // if (diff[l]>26)   diff[l]-=26;
    diff[r+1]-=k;
    // if(diff[r+1]<0)   diff[r]+=26;
  }
  A[1]=(diff[1]-A[1])%26+A[1];
  cout << A[1];
  for(int i=2;i <= n;i++){
    A[i]=A[i-1]+diff[i]%26;
    cout << A[i];
  }
  return 0;
}
copy
学习
全部回复(1)
Shiki
Shiki
L434
2025-02-27 00:56

A[i]=A[i-1]+diff[i]%26; 这里少了括号

回复
你的回复