problem d:
ch给你一个长度为n的数列,有两种操作:
1.set l r x :将[l,r]内的数全部赋值为x;
2.query l r ;查询[l,r]中占主导地位的数字是哪个;
该数字占主导地位指:该数在该区间中出现的此时占了区间长度的一半以上(出现一半不算占主导地位)。若没有,输出-1.
input:
第一行,一个数:n,表示序列的长度(1<=n<=200000);
第二行,n个数,分别为a1~an(0<=ai<=1000000);
第三行,一个数q,表示操作的个数(1<=q<=200000);
接下来q行,每一个操作,给出操作区间.
output:
对于每个query,输出主导区间数字,若不存在,输出-1.
problem J 商店
ice的商店里一共有15件商品,商品的价格很特殊。第一件商品价格1元,第二件商品价格2元,设第n件商品的价格是W(n)元,则:Wn(n)=W(n-1)+W(n-2)(3<=n<=15)
如果你猜的数字和ice想要的数字一致,你可以免费得到这些商品。
例如:ice想要的数字是4,那么共有4种购买方案:
1.买4个 第一种商品
2.买2个 第一种商品 和1个 第二种商品
3.买两个 第二种商品
4.买1个 第一种商品 和1个 第三种商品
请你计算共有多少种免费购物方案,方案数对(1000000000+9)取模。
input:第一行,一个整数t,表示有t组数据
接下来t行每行一个正整数x,表示ice这次想要的数字。
1<=t<=3000;1<=x<=3000
output:输出t行,每行有个正整数,表示在第i次活动中免费购物的方案数,取模。
例:input:
3
5
20
30
output:
6
134
509
求教。