博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
CSU 1803 2016(数论)
阅读量:4676 次
发布时间:2019-06-09

本文共 849 字,大约阅读时间需要 2 分钟。

2016

Problem Description:

给出正整数 n 和 m,统计满足以下条件的正整数对 (a,b) 的数量:

  1. 1≤a≤n,1≤b≤m;
  2. a×b 是 2016 的倍数。

Input:

输入包含不超过 30 组数据。

每组数据包含两个整数 n,m (1≤n,m≤109).

Output:

对于每组数据,输出一个整数表示满足条件的数量。

Sample Input:

32 63

2016 2016
1000000000 1000000000

Sample Output:

1

30576
7523146895502644
这题赛后发现还是可以做出来的,但比赛时看了近1小时都没思路,果然比赛时平常心很重要。

【题目链接】

【题目类型】模运算

&题解:

可以求出在[1,N]中,模为[1,2016]的数的个数; 以及在[1,M]中,模为[1,2016]的数的个数。分别存进a b数组,

因为x ∗y%2016=x%2016 ∗y%2016,接下来判断(x%2016 ∗y%2016)%2016是否为0,如果是那么他们的情况就有a[i]*b[j]种(注意:这块一定要用ll,因为这块最大的话都是1e6,乘起来就是1e12,会爆int),最后相加,输出就好。
【时间复杂度】O(2016^2)

&代码:

#include 
using namespace std;typedef long long ll;const int INF = 0x3f3f3f3f;#define cle(a,val) memset(a,(val),sizeof(a))#define SII(N,M) scanf("%d %d",&(N),&(M))#define rez(i,a,b) for(int i=(a);i<=(b);i++)#define PI(A) cout<<(A)<

转载于:https://www.cnblogs.com/s1124yy/p/5845322.html

你可能感兴趣的文章
配置jboss EAP 6.4 数据库连接超时时间
查看>>
【BZOJ5005】乒乓游戏 [线段树][并查集]
查看>>
前端页面数据埋点、分析和参考
查看>>
NBear简介与使用图解
查看>>
ng-app一些使用
查看>>
ubuntu16.04安装 java JDK8
查看>>
中兴F412光猫超级密码破解、破解用户限制、关闭远程控制、恢复路由器拨号
查看>>
sql 查询目标数据库中所有的表以其关键信息
查看>>
C# 高效率创建字符串类(StringBuilder)
查看>>
sql server 符号函数sign
查看>>
bzoj 4337 树的同构
查看>>
OPENQUERY用法以及使用需要注意的地方
查看>>
1001. Extending MyPoint class
查看>>
js使用showModalDialog,弹出一个自适应大小窗口
查看>>
[poj 3436]最大流+输出结果每条边流量
查看>>
webpack的安装
查看>>
字符流Reader和Writer
查看>>
【校招面试 之 C/C++】第33题 C++ 11新特性(四)之STL容器
查看>>
Java替代C语言的可能性
查看>>
android ListView中CheckBox错位的解决
查看>>