CSU 1803 2016(数论)
2016
Problem Description:
给出正整数 n 和 m,统计满足以下条件的正整数对 (a,b) 的数量:
- 1≤a≤n,1≤b≤m;
- 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小时都没思路,果然比赛时平常心很重要。
【题目链接】CSU 1803 2016
【题目类型】模运算
&题解:
可以求出在[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 <bits/stdc++.h>
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)<<endl;
const int MAXN = 2016 + 5 ;
int a[MAXN],b[MAXN];
int n,m;
void Solve()
{
while(~SII(n,m))
{
cle(a,0),cle(b,0);
rez(i,1,2016) a[i]=n/2016;
rez(i,1,2016) b[i]=m/2016;
rez(i,1,n%2016) a[i]++;
rez(i,1,m%2016) b[i]++;
ll ans=0;
rez(i,1,2016)
rez(j,1,2016)
{
if (i*j%2016==0)
ans+=(ll)a[i]*b[j];
}
PI(ans)
}
}
int main()
{
Solve();
return 0;
}
CSU 1803 2016(数论)的更多相关文章
- CSU 1803 2016 湖南省2016省赛
1803: 2016 Submit Page Summary Time Limit: 5 Sec Memory Limit: 128 Mb Submitted: 1416 ...
- 【模拟】【数学】CSU 1803 2016 (2016湖南省第十二届大学生计算机程序设计竞赛)
题目链接: http://acm.csu.edu.cn/OnlineJudge/problem.php?id=1803 题目大意: 给定n,m(n,m<=109)1<=i<=n,1& ...
- CSU 1803 - 2016 - [同余]
题目链接:http://acm.csu.edu.cn/csuoj/problemset/problem?pid=1803 给出正整数 n 和 m,统计满足以下条件的正整数对 (a,b) 的数量: 1. ...
- CSU 1803 2016
湖南省第十二届大学生计算机程序设计竞赛$A$题 枚举. 处理一下$\% 2016$之后的数分别有几个,然后$2016*2016$枚举一下统计方案数就可以了. #pragma comment(linke ...
- CSU - 1803 —— 数学题
题目链接:http://acm.csu.edu.cn/csuoj/problemset/problem?pid=1803 Description 给出正整数 n 和 m,统计满足以下条件的正整数对 ...
- 十二届 - CSU 1803 :2016(同余定理)
题目地址:http://acm.csu.edu.cn/csuoj/problemset/problem?pid=1803 Knowledge Point: 同余定理:两个整数a.b,若它们除以整数m所 ...
- csu 1803(余数分类)
1803: 2016 Time Limit: 5 Sec Memory Limit: 128 MBSubmit: 565 Solved: 364[Submit][Status][Web Board ...
- 【CSU 1803】2016
http://acm.csu.edu.cn/OnlineJudge/problem.php?id=1803 Solution: 考虑两个数x,y乘积%2016=0 x×y≡0(MOD 2016) x= ...
- 【CSU 1803】2016 (数学)
Description 给出正整数 n 和 m,统计满足以下条件的正整数对 (a,b) 的数量: 1. 1≤a≤n,1≤b≤m; 2. a×b 是 2016 的倍数. Input 输入包含不超过 30 ...
随机推荐
- spark-DataFrame之RDD和DataFrame之间的转换
package cn.spark.study.core.mycode_dataFrame; import java.io.Serializable;import java.util.List; imp ...
- 修改host文件屏蔽视频广告和网站
很多时候我们会需要屏蔽一些网站或者广告,类似XX网站,下木马病毒的网站,或者破解软件的时候.我们可以使用一些软件屏蔽,我这里是用windows系统自带的hosts文件来屏蔽的.这个文件有点类似精简版的 ...
- Android开发之多级下拉列表菜单实现(仿美团,淘宝等)
注:本文转载于:http://blog.csdn.net/minimicall/article/details/39484493 我们在常用的电商或者旅游APP中,例如美团,手机淘宝等等,都能够看的到 ...
- Unity资源管理与更新
当你在 工程目录下的 Asset 文件夹中放置一个文件时(电脑上的文件夹,不是 Unity 界面中的文件夹),Unity会自动检测到一个新的文件被添加(Unity会不停地检查Assets文件夹中的内容 ...
- 利用C#Marshal类实现托管和非托管的相互转换
Marshal 类 命名空间:System.Runtime.InteropServices 提供了一个方法集,这些方法用于分配非托管内存.复制非托管内存块.将托管类型转换为非托管类型,此外还提供了在与 ...
- QQ登入(4)QQ分享-内容转载
///////////////////QQ分享///////////// public void myclick3(View v){ //shareType : SHARE_TO_QQ_TYPE_IM ...
- 解析C#中[],List,Array,ArrayList的区别及应用
[] 是针对特定类型.固定长度的. List 是针对特定类型.任意长度的. Array 是针对任意类型.固定长度的. ArrayList 是针对任意类型.任意长度的. Array 和 ArrayLis ...
- Create STATISTICS,UPDATE STATISTICS
该命令在一张表或者索引了的视图上更新查询优化统计数字信息. 默认情况下, 查询优化器已经更新了必要的用来提高查询计划的统计信息; 在某些情况下, 你可以通过使用UPDATE STATISTICS 命令 ...
- 使用Myeclipse 2015 进行 Hdp 4 windows 开发
在本地环境下进行开发,使用cygwin安装 Hdp那就是一个呵呵岂能概括. 所以啊,还是用Hdp windows进行开发测试吧.这样感觉省心点.具体 Hdp windows的安装参看前面的文章或自行G ...
- nmap与ntop
http://blog.csdn.net/aspirationflow/article/details/7694274