• NYOJ 228士兵杀敌(五)(数组的巧妙应用)


    士兵杀敌(五)

    时间限制:2000 ms  |  内存限制:65535 KB
    输入
    只有一组测试数据
    第一行是三个整数N,C,Q(1<=N,C,Q<=1000000),其中N表示士兵的总数。
    随后的C行,每行有三个整数Mi,Ni,Ai(0<=Mi<=Ni<=N,0<=Ai<=100),表示从第Mi号到第Ni号士兵所有人平均增加了Ai的军功。
    再之后的Q行,每行有两个正正数m,n,表示南将军询问的是第m号士兵到第n号士兵。
    输出
    请对每次询问输出m号士兵到第n号士兵的总军功数,由于该数值可能太大,请把结果对10003取余后输出
    样例输入
    5 3 2
    1 3 2
    2 4 1
    5 5 10
    1 5
    2 3
    
    样例输出
    19
    6
     1 #include<cstdio>
     2 #define Max 1000005
     3 int a[Max];
     4 int main()
     5 {
     6     //freopen("in.txt","r",stdin);
     7     int i,N,C,Q,L,R,D;
     8     
     9     scanf("%d%d%d",&N,&C,&Q);
    10     for(i=0; i<C; i++)
    11     {
    12         scanf("%d%d%d",&L,&R,&D);
    13         a[L] += D;
    14         a[R+1] -= D;
    15     }
    16     for(i=1; i<=N; i++)//求每个元素的值
    17         a[i]+=a[i-1];
    18     for(i=1;i<=N;i++)//求前i项和
    19         a[i]=(a[i-1]+a[i])%10003;
    20     while(Q--)
    21     {
    22         scanf("%d%d",&L,&R);
    23         printf("%d
    ",(a[R]-a[L-1]+10003)%10003);
    24     }
    25     return 0;
    26 }        
    View Code
  • 相关阅读:
    shell 的多进程
    shell 按行读取文件的内容
    2>&1的意思
    >/dev/null 2>&1
    js 变量作用域
    Premiere Pro 中的键盘快捷键
    premiere pro 2019 mac 破解
    js 空语句
    js 数组原型
    js 奇偶判断
  • 原文地址:https://www.cnblogs.com/qiu520/p/3200033.html
Copyright © 2020-2023  润新知