Luo Gu: P3817 Dulces de Little A (codiciosos)

tema:

Inserte la descripción de la imagen aquí

Análisis: Un codicioso muy simple, espero poder analizar con calma en la sala de exámenes.

De izquierda a derecha, cuando el primer par de sumas excede x, el de la derecha obviamente se elimina.

Un hoyo, el mínimo es 0.

Código:

#include<bits/stdc++.h>
using namespace std;
int m,x;
int A[100005];
int main()
{
    
    
 cin>>m>>x;
 for(int i=0;i<m;i++) cin>>A[i];
 long long ans=0;
 for(int i=0;i<m-1;i++)
 {
    
    
  if(A[i]+A[i+1]<=x) continue;
  ans+=A[i]+A[i+1]-x;
  int c=A[i]+A[i+1]-x;
  A[i+1]=A[i+1]-c;
  A[i+1]=max(A[i+1],0);
 }
 cout<<ans;
}

Supongo que te gusta

Origin blog.csdn.net/weixin_42721412/article/details/108509793
Recomendado
Clasificación