#include <iostream>
#include <cstdio>
#include <cstdlib>
#include <cstring>
#include <cmath>
#include <cctype>
#include <algorithm>
#include <string>
#include <vector>
#include <queue>
#include <list>
#include <set>
#include <stack>
#include <map> using namespace std;
const int MAX_A = ;
const int MAX_T = ;
int T, A, S, B;
int a[MAX_T];
int dp[][MAX_A];
const int MOD = 1e6; int main(void)
{
cin>>T>>A>>S>>B;
//输入组别的数量、蚂蚁的数量、起始的地方、终止的地方
int x;
for(int i = ; i < A; i++){
scanf("%d", &x); //组的编号其实是 0 到 T - 1
a[x-]++;
}
//UNIT OPTION
memset(dp, , sizeof(dp));
for(int i = ; i <= a[]; i++) dp[][i] = ;
// END OF INIT
for(int i = ; i < T; i++){
if(i & ){
memset(dp[], , sizeof(dp[]));
for(int j = ; j <= B; j++){
for(int k = ; k <= a[i] && k <= j; k++){
dp[][j] += dp[][j-k], dp[][j] %= MOD;
}
}
}
else{
memset(dp[], , sizeof(dp[]));
for(int j = ; j <= B; j++){
for(int k = ; k <= a[i] && k <= j; k++){
dp[][j] += dp[][j-k], dp[][j] %= MOD;
}
}
}
}
int res = ;
// printf("SHOW THE TMEP\n");
if((T - ) & ){
// for(int i = 0; i < S; i++) printf(" i %d : %d\n", i, dp[1][i]);
for(int i = S; i <= B; i++){
// printf(" i %d : %d\n", i, dp[1][i]);
res += dp[][i];
res %= MOD;
}
}
else{
// for(int i = 0; i < S; i++) printf(" i %d : %d\n", i, dp[0][i]);
for(int i = S; i <= B; i++){
// printf(" i %d : %d\n", i, dp[0][i]);
res += dp[][i];
res %= MOD;
}
}
// printf("THE RESULT : ");
printf("%d\n", res);
return ;
}

注意  剩余 后 6 位; 然后你需要 MOD 1E6; 并不是 1E7 !!!!!!!!

POJ3046ANT_COUNTING的更多相关文章

随机推荐

  1. Cats and Fish HihoCoder - 1631

    Cats and Fish HihoCoder - 1631 题意: 有一些猫和一些鱼,每只猫有固定的吃鱼速度,吃的快的猫优先选择吃鱼,问在x秒时有多少完整的鱼和有多少猫正在吃鱼? 题解: 模拟一下. ...

  2. nodejs基础(回调函数、模块、事件、文件读写、目录的创建与删除)

    node官网:http://nodejs.cn/ 今天想看看node的视频,对node进一步了解, 1.我们可以从官网下载node到自己的电脑上,今天了解到node的真正概念,node时javascr ...

  3. B. Uniqueness(尺取)

    B. Uniqueness time limit per test 2 seconds memory limit per test 256 megabytes input standard input ...

  4. JQuery 行内编辑(即点即改)

    行内编辑 下面是详细的代码: <style> .dian { cursor: pointer; } </style> //这个让鼠标 移动到 span上 的时候 是一个小手 & ...

  5. Maven的概述和基础(学习整理)

    1. Maven是啥 Maven是一个项目管理工具,包含了一个项目对象模型(POM),一组标准集合,一个项目生命周期(Lifecycle),一个依赖管理系统,和用来运行定义在生命周期阶段中的插件目标的 ...

  6. JAVA安全漫谈1-8笔记

    一.反射篇1 classloader就是java的类加载器,告诉虚拟机如何加载这个类.默认情况下根据类名来加载类,类名必须是完整路径 public class class_init { { Syste ...

  7. 笔记四(Competitor Analysis Test小结)

    1.关机后启动电脑,测试BIOS的POST time 2.进入睡眠模式后,按任意键,通过Windows logs查看bios的init时间 3.进入BIOS setup的快捷键,一般为F2 4.进入B ...

  8. SpringBoot2.0 Actuator 监控参数说明

    主要内容更 监控参数说明 Maven坐标 <dependency> <groupId>org.springframework.boot</groupId> < ...

  9. linux中怎样会引起进程睡眠呢?

    答: 使用信号量,wait队列,completion,调用schedule,用GFP_KERNEL指定的内存分配malloc,get,free,page等都会引起睡眠 思考: Q: 为什么会引起睡眠呢 ...

  10. JAXB序列化对象与反序列化XML

    1.什么是JAXB JAXB(Java Architecture for XML Binding) 是一个业界的标准,是一项可以根据XML Schema产生Java类的技术. 该过程中,JAXB也提供 ...