#801. 鼹鼠大盗
鼹鼠大盗
题目描述
鼹鼠大盗在某天深夜偷窃了一大包花生。它需要趁着夜色穿过一条长度为 米的横向地道,把花生运回家。地道非常长,不过鼹鼠大盗这次是有备而来,它可以搭乘事先准备好的动力钻头快速推进。但这种动力钻头非常耗费能源,每推进一段距离,鼹鼠大盗就需要带着它钻出地面补充燃料,然后继续潜入地道进行下次推进。每次推进一旦开始就无法暂停。动力钻头共有 个档位可以选择,其中第 个档位的单次推进距离为 米。鼹鼠大盗需要在出发前就设定好档位,一旦确定就无法再更改。
暗夜笼罩的大地上危机四伏。在地道上方的地面上,有 只黄鼠狼在埋伏猎物,它们的坐标分别为 ,每个位置最多只有一只黄鼠狼。若鼹鼠钻出地面补充燃料时遇到黄鼠狼,它就可能会有性命之忧。因此鼹鼠在出发前需要慎重选择动力钻头的档位,以便在补充燃料时尽可能避开黄鼠狼。
你需要根据黄鼠狼的位置,选择合适的档位,使得鼹鼠大盗在穿过地道的整个过程中碰到的黄鼠狼数量最少。若有多个档位满足条件,则需要将它们全部找出。
输入格式
第一行:三个整数 ,分别表示地道的长度、档位数量、黄鼠狼的数量。
第二行: 个整数,分别表示每个档位的单次推进距离。
第三行: 个整数,分别表示每只黄鼠狼所在的坐标位置。
输出格式
第一行:一个整数,表示满足条件的档位总数。
第二行:若干个整数,分别表示每个满足条件的档位编号。
数据样例
5 3 5
2 4 5
1 2 3 4 5
2
2 3
1000000000 2 3
2 5
999999995 999999998 999999996
1
2
样例 解释
地道总长度为 米,动力钻头共有 个档位,黄鼠狼有 只。
第 个档位的单次推进距离分别为 米;
只黄鼠狼的坐标分别为 。
若选择第 档,单次推进距离为 ,则整个行进路程中会在坐标为 的位置各碰到一只黄鼠狼;
若选择第 档,单次推进距离为 ,则整个行进路程中只会在坐标为 的位置碰到一只黄鼠狼;
若选择第 档,单次推进距离为 ,则整个行进路程中只会在坐标为 的位置碰到一只黄鼠狼。
因此第 号档位都能使遇上的黄鼠狼数量最少。故第一行输出 ,表示可供选择的档位有 种;第二行输出 ,表示每个可供选择的档位编号。
数据规模与约定
对于 的数据,;
对于 的数据, ;
对于 的数据,。