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

题目描述

M和L在玩一个分数游戏。开始时M的分数为a,L的分数为b。每一轮他们两个都会得到区间中的一个整数,并加到他们的分数上。

M想知道在t轮游戏后,他有多少种可能得到比L高的分数。两次游戏不同当且仅当存在某一轮某一人得到的数不同。游戏共有种不同的可能。故只需求出对取模后的结果即可。

输入描述:

输入一行四个整数a,b,k,t (, , )

输出描述:

输出一行一个整数,表示可能的游戏数。
示例1

输入

复制
1 2 2 1

输出

复制
6

说明

在第一个样例中,若L得到-2,M可以在得到0,1,2的情况下获胜。若L得到-1,M可以在得到1,2的情况下获胜。若L得到0,M可以在得到2的情况下获胜。综上,共有3+2+1 = 6种可能获胜。
示例2

输入

复制
1 1 1 2

输出

复制
31
示例3

输入

复制
2 12 3 1

输出

复制
0