`
he91_com
  • 浏览: 375941 次
文章分类
社区版块
存档分类
最新评论

lightoj 1369 - Answering Queries

 
阅读更多

水题,但是我更水,查错查了好久,原来是更新时出错了,细节决定成败,以后一定要注意

#include<stdio.h>                                                                                                           
#include<string.h>                                                                                                          
#include<algorithm>                                                                                                         
using namespace std;                                                                                                        
long long f( long long A[], int n ) { // n = size of A                                                                      
    long long ans = 0;                                                                                                      
    for( int i = 0; i < n; i++ )                                                                                            
            ans+= (n-1-i*2)*A[i];                                                                                           
    return ans;                                                                                                             
}                                                                                                                           
long long a[100010];                                                                                                        
int main()                                                                                                                  
{                                                                                                                           
    int i,j,t,k,m,n,h,x,y,q;                                                                                                
    char ch[110];                                                                                                           
    scanf("%d",&t);                                                                                                         
    for(k=1;k<=t;k++)                                                                                                       
    {                                                                                                                       
        scanf("%d%d",&n,&q);                                                                                                
        printf("Case %d:\n",k);                                                                                             
        for(i=0;i<n;i++)                                                                                                    
           scanf("%lld",&a[i]);                                                                                             
        long long sum=f(a,n),v;                                                                                             
        while(q--)                                                                                                          
        {                                                                                                                   
            scanf("%d",&h);                                                                                                 
            if(h==1)                                                                                                        
               printf("%lld\n",sum);                                                                                        
            else if(h==0)                                                                                                   
            {                                                                                                               
                scanf("%d%lld",&x,&v);                                                                                      
                long long ll=n-1-x*2;                                                                                       
                sum+=ll*(v-a[x]);
		a[x]=v;//这里一开始忘了更新了,导致后面出错,坑死我了                                                                                           
            }                                                                                                               
        }                                                                                                                   
    }                                                                                                                       
    return 0;                                                                                                               
}                                                                                                                           


分享到:
评论

相关推荐

Global site tag (gtag.js) - Google Analytics