A題: http://blog.csdn.net/qq_37257079/article/details/79604245
B題: http://www.cnblogs.com/a249189046/p/8598229.html
C題: https://git-dwh.github.io/2018/03/18/%E5%9B%9B%E6%A0%A1%E8%81%94%E8%B5%9B2-C-Array-Gcd/#more
D題: https://git-dwh.github.io/2018/03/18/%E5%9B%9B%E6%A0%A1%E8%81%94%E8%B5%9B2-D-D%E5%95%86%E5%BA%97/#more
E題:
int l,r;sf("%d%d",&l,&r);
ll ans=1;
for(int i=l;i<=r;i++)
ans=ans*a[i]%p;
pf("%lld\n",ans);
F題: http://blog.csdn.net/fo0old/article/details/79594309
G題:
本題可以離線處理。
將所有的邊按權(quán)值從小到大排序,將詢問按權(quán)值從小到大排序,維護一個并查集,順序處理排序后的詢問。對于每一個詢問,將權(quán)值小于等于它的邊全部加入,維護集合大小,如果(x,y)不在同一個集合,那么增加的答案就是s[x]*s[y],s表示集合的大小。注意long long