#NK22M. 三元关系

    ID: 39 传统题 1000ms 256MiB 尝试: 0 已通过: 0 难度: (无) 上传者: 标签>NK语法基础训练2.2基础语法同余分类计数乘法原理64位整数

三元关系

题目描述

给定两个整数 NN 和 KK。如果三元组 (a,b,c)(a,b,c) 满足以下条件,则称它为一个合法三元组:

  • a+ba+b 是 KK 的倍数;
  • b+cb+c 是 KK 的倍数;
  • a+ca+c 是 KK 的倍数。

请你找出满足条件且 1≤a,b,c≤N1\le a,b,c\le N 的三元组数量。

注意:(a,b,c)(a,b,c) 中三个数的顺序不能改变,因此不同顺序视为不同三元组;但 a,b,ca,b,c 的数值可以相同。

输入格式

输入两个整数 N,KN,K,中间用空格隔开。

输出格式

输出合法三元组的数量。

数据范围

1≤N,K≤2×1051\le N,K\le 2\times 10^5。

样例

输入 1:

3 2

输出 1:

9

输入 2:

5 3

输出 2:

1

输入 3:

31415 9265

输出 3:

27

输入 4:

35897 932

输出 4:

114191

样例说明

样例 1 中,以下 99 个三元组满足条件:

$(1,1,1),(1,1,3),(1,3,1),(1,3,3),(2,2,2),(3,1,1),(3,1,3),(3,3,1),(3,3,3)$。