制造游戏币
题号:NC229540
时间限制:C/C++/Rust/Pascal 1秒,其他语言2秒
空间限制:C/C++/Rust/Pascal 256 M,其他语言512 M
64bit IO Format: %lld

题目描述

阿强购买了一个制造游戏币的机器,这种机器可以产出𝑛种面值不同的游戏币,但是游戏机有一个缺陷,每一次生产,机器会给出𝑚个互不相同的二元组(b_i, c_i),代表生产的游戏币中,第b_i种游戏币的生产数量要严格大于第c_i种游戏币,其中所有的b_i都互不相等,所有的c_i也都互不相等。
在每次生产游戏币时,所有面值的游戏币都可以生产无限枚,但是阿强只需要总面值𝑇的游戏币,他想知道,每次利用这台机器生产出总面值为𝑇的游戏币有多少种方案

输入描述:

第一行三个整数n,m,T,含义见题目描述
第二行n个整数,第i个整数为第i枚游戏币的面值。
接下来m行,每行两个整数表示一个二元组(b_i, c_i)
保证每种游戏币的面值不超过,且

输出描述:

共一行一个整数,表示对取模后的方案数。
示例1

输入

复制
5 2 21
5 2 3 1 9
4 2
3 4

输出

复制
6