#2 WA 求助。
查看原帖
#2 WA 求助。
1296826
lcfollower楼主2024/6/2 16:25

rt,不理解为什么给定序列 a=[1,2,3,⋯ ,k,0,⋯ ,0]a = [1,2,3,\cdots,k,0,\cdots,0](共 nn 个),求 ∑i=1mmaxj=liri(Aj)\sum _{i = 1}^m max_{j = l_i} ^ {r_i} (A_j) 都会出错,dalao 求改。

#include <bits/stdc++.h>
using namespace std;

#define int long long
#define _Dark_Star exit(0)
#define up(i,x,y) for(int i=x;i<=y;i++)
#define dn(i,x,y) for(int i=x;i>=y;i--)
using namespace std;
inline int read(){int x=0,f=1;char ch=getchar();while(ch<'0'||ch>'9'){if(ch=='-')f=-1;ch=getchar();}while(ch>='0'&&ch<='9')x=(x<<1)+(x<<3)+(ch^48),ch=getchar();return x*f;}
inline void write(int x){if(x<0)putchar('-'),x=-x;if(x>9)write(x/10);putchar(x%10|48);}
inline void writeln(int x){write(x),putchar('\n');}
inline void writesp(int x){write(x),putchar(' ');}

const int N = 25;
int n , k , m , a[N] , sum;

signed main(){
  n = read() , k = read() , m = read();
  up(i,1,k) a[i] = i;
  while(m --){
    int l = read() , r = read() , max = LONG_LONG_MIN;
    up(i,l,r) if(a[i] > max) max = a[i];
    sum += max;
  }
  writeln(sum);
  return 0;
}
2024/6/2 16:25
加载中...