acm 为什么老是time limit exceed现在先给你一个简单的问题:n个整数a(1),a(2),a(3)…a(n); 每个询问给你两个数:i,j 要求你算出a(i) + a(i+1)…+a(j)的和.Input第一行一个整数 T,代表T组数据.每组数据第一

来源:学生作业帮助网 编辑:作业帮 时间:2024/11/30 19:17:08
acm 为什么老是time limit exceed现在先给你一个简单的问题:n个整数a(1),a(2),a(3)…a(n); 每个询问给你两个数:i,j 要求你算出a(i) + a(i+1)…+a(j)的和.Input第一行一个整数 T,代表T组数据.每组数据第一
xR=O@+7ڍIj:dggC fpX*&RK`C(FB! /O } `inp|ݣ3ysxc6Sb U*yP#퓝<!ny$gw uM[f*by>:=SM (3_Ҋ?X&{STAet!1 Av.oWpifJъsWX\Adu{ kOː4̒sF7C#ҫzsi4ҡO^@Lp4TLL]% CS"Wgd0VmZo$52#>ڡft ,)K\v`$wĿkÓ)Isth>&ŵY H3kᘞސG]

acm 为什么老是time limit exceed现在先给你一个简单的问题:n个整数a(1),a(2),a(3)…a(n); 每个询问给你两个数:i,j 要求你算出a(i) + a(i+1)…+a(j)的和.Input第一行一个整数 T,代表T组数据.每组数据第一
acm 为什么老是time limit exceed
现在先给你一个简单的问题:
n个整数a(1),a(2),a(3)…a(n);
每个询问给你两个数:i,j 要求你算出a(i) + a(i+1)…+a(j)的和.
Input
第一行一个整数 T,代表T组数据.
每组数据第一行是一个整数n(1

acm 为什么老是time limit exceed现在先给你一个简单的问题:n个整数a(1),a(2),a(3)…a(n); 每个询问给你两个数:i,j 要求你算出a(i) + a(i+1)…+a(j)的和.Input第一行一个整数 T,代表T组数据.每组数据第一
比如说q=200000,每次查询的i, j都是1,10000,那么你的程序的循环次数为200000*10000次,当然超时了.但是如果你用一个数组sum保存数列的前n项和的话,每次查询只需要计算
sum[j]-sum[i-1]就可以了,这样做才不会超时.