CF1425C.Captain of Knights
NOI/NOI+/CTSC
通过率:0%
时间限制:2.00s
内存限制:256MB
AC君温馨提醒
该题目为【codeforces】题库的题目,您提交的代码将被提交至codeforces进行远程评测,并由ACGO抓取测评结果后进行展示。由于远程测评的测评机由其他平台提供,我们无法保证该服务的稳定性,若提交后无反应,请等待一段时间后再进行重试。
题目描述
Mr. Chanek just won the national chess tournament and got a huge chessboard of size N×M. Bored with playing conventional chess, Mr. Chanek now defines a function F(X,Y), which denotes the minimum number of moves to move a knight from square (1,1) to square (X,Y). It turns out finding F(X,Y) is too simple, so Mr. Chanek defines:
G(X,Y)=∑i=XN∑j=YMF(i,j)
Given X and Y, you are tasked to find G(X,Y).
A knight can move from square (a,b) to square (a′,b′) if and only if ∣a−a′∣>0, ∣b−b′∣>0, and ∣a−a′∣+∣b−b′∣=3. Of course, the knight cannot leave the chessboard.
陈先生刚刚赢得了全国国际象棋锦标赛,并获得了一个大小为 N×M 的巨型棋盘。厌倦了传统国际象棋的玩法,陈先生定义了一个函数 F(X,Y),表示马从格子 (1,1) 移动到格子 (X,Y) 所需的最少步数。结果发现计算 F(X,Y) 过于简单,因此陈先生进一步定义:
G(X,Y)=i=X∑Nj=Y∑MF(i,j)
给定 X 和 Y,你需要计算 G(X,Y)。
马可以从格子 (a,b) 移动到格子 (a′,b′) 当且仅当 ∣a−a′∣>0,∣b−b′∣>0,且 ∣a−a′∣+∣b−b′∣=3。当然,马不能移出棋盘边界。
输入格式
The first line contains an integer T (1≤T≤100), the number of test cases.
Each test case contains a line with four integers X Y N M (3≤X≤N≤109,3≤Y≤M≤109).
第一行包含一个整数 T (1≤T≤100),表示测试用例的数量。
每个测试用例包含一行,包含四个整数 X Y N M (3≤X≤N≤109,3≤Y≤M≤109)。
输出格式
For each test case, print a line with the value of G(X,Y) modulo 109+7.
对于每个测试用例,输出一行,表示 G(X,Y) 对 109+7 取模的值。
输入输出样例
输入#1
2 3 4 5 6 5 5 8 8
输出#1
27 70
输入解题思路,AI测评打分。不知道怎么写?