问题 M: Triangular Relationship

题目链接

  • You are given integers N and K. Find the number of triples (a,b,c) of positive integers not greater than N such that a+b,b+c and c+a are all multiples of K. The order of a,b,c does matter, and some of them can be the same.

  • Constraints
    ·1≤N,K≤2×105
    ·N and K are integers.

  • 输入
    Input is given from Standard Input in the following format:
    N K

  • 输出
    Print the number of triples (a,b,c) of positive integers not greater than N such that a+b,b+c and c+a are all multiples of K.

  • 样例输入 Copy
    3 2

  • 样例输出 Copy
    9

  • 提示
    (1,1,1),(1,1,3),(1,3,1),(1,3,3),(2,2,2),(3,1,1),(3,1,3),(3,3,1) and (3,3,3) satisfy the condition.

  • 题意分析 :
    给定N和K。
    求三元组(a,b,c)的个数。
    三元组满足下面条件:
    a、b、c的值都是不大于N的正整数。
    a+b、b+c、a+c都是K的整数倍。

  • 思路分析
    根据数论同余的知识:
    a mod K + b mod K = K mod K.
    b mod K + c mod K = K mod K.
    a mod K + c mod K = K mod K.
    解得a=b=c=K/2 mod K(当K是偶数时有解)。或者a=b=c=K mod K。

  • 代码

#include<iostream>
#include<math.h>
#include<stdio.h>
#include<string.h>
#include <algorithm>
#define ll long long int
#define sc(a) scanf("%lld",&a)
const int mod=998244353;
using namespace std;
const int inf=1e9+7;
const int maxn=2e5+10;ll n,m,sum,r,t,p,l;
ll a[maxn],b[maxn];
ll dp[maxn];
char str[maxn],s[maxn];int main() {cin>>n>>m;t=n/m;p=n%m;sum=t*t*t;if(p>=m/2) t++;if(m%2==0)sum+=t*t*t;cout<<sum<<endl;return 0;
}

M: Triangular Relationship (数论)相关推荐

  1. [ARC 102C]Triangular Relationship

    Atcoder ARC 102C C:Triangular Relationship 题意: 你有两个数\(N,K\),找到有多少三元组\((a,b,c)\),满足其中元素为\([1,n]\)的正整数 ...

  2. 中国会计科目的中英文对照

    中国会计科目的中英文对照 中国会计科目的中英文对照 一.资产类 Assets 流动资产 Current assets 货币资金 Cash and cash equivalents 1001 现金 Ca ...

  3. iOS获取设备的唯一标识的方法

    各种获取设备唯一标识的方法介绍 一.UDID(Unique Device Identifier) UDID的全称是Unique Device Identifier,它就是苹果iOS设备的唯一识别码,它 ...

  4. 信贷基本词汇英汉对照[突然发现写软件也要被迫学企业管理的一些相关知识....]...

    a payment or serious payments 一次或多次付款 abatement 扣减 absolute and unconditional payments 绝对和无条件付款 acce ...

  5. 什么是胆汁酸,其与肠道微生物互作如何影响人体健康

    谷禾健康 胆汁酸是一种代谢胆固醇的物质,它具有两个亲和性不同的区域,即一部分能够与水分子相互作用(亲水),而另一部分则不能与水分子相互作用(疏水). 由于拥有这种两亲性质,胆汁酸能够在生物体内与胆固醇 ...

  6. 数论(一)——素数,GCD,LCM

    这是一个数论系列:) 一.素数 ×费马小定理 Theorem: 设 p 是一个素数,a 是一个整数且不是 p 的倍数,那么 很遗憾,费马小定理的逆定理是不成立的.对 a = 2,满足的非素数 n 是存 ...

  7. 【数论总结】-----励志写好一篇数论总结↖(^ω^)↗//正在施工...未完工

    近期学了学数论,来写一波总结吧. (1)排列组合,比较基础的东西了吧.//只写个概念吧,(逃: 概念:就是从n个不同元素中,任取m(m≤n)个元素并成一组,叫做从n个不同元素中取出m个元素的一个组合: ...

  8. 解题报告(十八)数论题目泛做(Codeforces 难度:2000 ~ 3000 + )

    整理的算法模板合集: ACM模板 点我看算法全家桶系列!!! 实际上是一个全新的精炼模板整合计划 繁凡出品的全新系列:解题报告系列 -- 超高质量算法题单,配套我写的超高质量的题解和代码,题目难度不一 ...

  9. 《算法竞赛中的初等数论》(五)正文 0x50筛法(ACM / OI / MO)(十五万字符数论书)

    整理的算法模板合集: ACM模板 点我看算法全家桶系列!!! 实际上是一个全新的精炼模板整合计划 写在最前面:本文部分内容来自网上各大博客或是各类图书,由我个人整理,增加些许见解,仅做学习交流使用,无 ...

最新文章

  1. 有监督学习和无监督学习举例_对比自监督学习
  2. 在ASP.NET MVC中加载部分视图的方法及差别
  3. ECMAScript 2015(ES6)规范中的promise
  4. 使用Servlet和Bootstrap上传Ajax文件
  5. html盒子有哪些属性,盒子模型有哪些属性 在html5中哪些元素具有盒子模型
  6. 分布式MinIO快速入门 ​​​​​​​
  7. Tensorflow——构造神经网络
  8. 解析button和input type=”button”的区别
  9. php判断手机是安卓系统还是ios系统
  10. php laravel手册,【laravel7.x中文文档】集合
  11. 百度地图省市县乡镇街道对应的zoom级别
  12. 很抱歉,三维地图当前不能在你的国家/地区使用 Excel绘制三维地图问题解决
  13. java生成报表_用java实现报表导出
  14. day 55 定位流(相对,绝对,固定)
  15. android 拍照和相册,Android 拍照和从相册选照片
  16. deepin更新依赖错误_Ubuntu安装deepin-wine解决依赖问题
  17. 【NOIP2015提高组】信息传递
  18. Mybatis缓存机制(一级缓存、二级缓存、三级缓存)
  19. Linux运维工程师学习大纲
  20. 安装grub到U盘分区,实现多系统引导(BIOS,UEFI)

热门文章

  1. SpringBoot——日志文件
  2. f460root密码,f460 超级密码
  3. cocos2d-js html5自定义鼠标图案及设置原点方法
  4. python计算机视觉学习第三章——图像到图像的映射
  5. STM32F4 | 独立看门狗(IWDG)实验
  6. 如何查询以太信道接口_查询区块
  7. 单元测试框架NUnit 之 Attributes特性(一)
  8. hbuilderx代码自动补全_HBuilderX代码提示系统说明
  9. Codeforces Round #768 (Div. 1)(A-C)
  10. C中fread()函数的建议使用方法