Code(hdu5212)
Code
Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 65536/65536 K (Java/Others)
Total Submission(s): 877 Accepted Submission(s): 348
likes playing with codes.One day he is writing a function.Howerver,his
computer breaks down because the function is too powerful.He is very
sad.Can you help him?
The function:
int calc
{
int res=0;
for(int i=1;i<=n;i++)
for(int j=1;j<=n;j++)
{
res+=gcd(a[i],a[j])*(gcd(a[i],a[j])-1);
res%=10007;
}
return res;
}
For each case:
The first line contains an integer N(1≤N≤10000).
The next line contains N integers a1,a2,...,aN(1≤ai≤10000).
Print an integer,denoting what the function returns.
1 #include <iostream>
2 #include<stdio.h>
3 #include<algorithm>
4 #include<string.h>
5 #include<queue>
6 #include<set>
7 #include<math.h>
8 #include<vector>
9 typedef long long LL;
10 using namespace std;
11 bool prime[10005];
12 int ak[10005];
13 LL mul[10005];
14 LL cnt[10005];
15 vector<int>vec[10005];
16 int mod = 10007;
17 int main(void)
18 {
19 int i,j;
20 int cn = 0;
21 mul[1] = 1;
22 for(i = 2; i <= 10000; i++)
23 {
24 if(!prime[i])
25 {
26 ak[cn++] = i;
27 mul[i] = -1;
28 }
29 for(j = 0; j < cn&&(LL)ak[j]*i<=10000; j++)
30 {
31 if(i%ak[j])
32 {
33 prime[i*ak[j]] = true;
34 mul[i*ak[j]] = -mul[i];
35 }
36 else
37 {
38 prime[i*ak[j]] = true;
39 mul[i*ak[j]] = 0;
40 break;
41 }
42 }
43 }
44 int n;
45 for(i = 1;i <= 10000;i++)
46 {
47 for(j = 1;j <= sqrt(i);j++)
48 {
49 if(i%j==0)
50 {
51 vec[i].push_back(j);
52 if(i/j!=j)
53 vec[i].push_back(i/j);
54 }
55 }
56 }
57 while(scanf("%d",&n)!=EOF)
58 { int maxx = 0;
59 memset(cnt,0,sizeof(cnt));
60 int i,j;
61 for(i = 0; i < n; i++)
62 {scanf("%d",&ak[i]);maxx = max(maxx,ak[i]);}
63 for(i = 0; i < n; i++)
64 {
65 for(j = 0;j < vec[ak[i]].size();j++)
66 { int x = vec[ak[i]][j];
67 cnt[x]++;
68 }
69 }//printf("%lld\n",cnt[1]);
70 LL sum = 0;
71 for(i = 1;i <= maxx;i++)
72 {
73 for(j = i;j <= maxx;j+=i)
74 {
75 sum = sum + mul[j/i]*(cnt[j]*cnt[j])*(i*(i-1)%mod)%mod;
76 sum%=mod;
77 }
78 }
79 printf("%lld\n",(sum%mod+mod)%mod);
80 }
81 return 0;
82 }
Code(hdu5212)的更多相关文章
- Visual Studio Code 代理设置
Visual Studio Code (简称 VS Code)是由微软研发的一款免费.开源的跨平台文本(代码)编辑器,在十多年的编程经历中,我使用过非常多的的代码编辑器(包括 IDE),例如 Fron ...
- 我们是怎么做Code Review的
前几天看了<Code Review 程序员的寄望与哀伤>,想到我们团队开展Code Review也有2年了,结果还算比较满意,有些经验应该可以和大家一起分享.探讨.我们为什么要推行Code ...
- Code Review 程序员的寄望与哀伤
一个程序员,他写完了代码,在测试环境通过了测试,然后他把它发布到了线上生产环境,但很快就发现在生产环境上出了问题,有潜在的 bug. 事后分析,是生产环境的一些微妙差异,使得这种 bug 场景在线下测 ...
- 从Script到Code Blocks、Code Behind到MVC、MVP、MVVM
刚过去的周五(3-14)例行地主持了技术会议,主题正好是<UI层的设计模式——从Script.Code Behind到MVC.MVP.MVVM>,是前一天晚上才定的,中午花了半小时准备了下 ...
- 在Visual Studio Code中配置GO开发环境
一.GO语言安装 详情查看:GO语言下载.安装.配置 二.GoLang插件介绍 对于Visual Studio Code开发工具,有一款优秀的GoLang插件,它的主页为:https://github ...
- 代码的坏味道(14)——重复代码(Duplicate Code)
坏味道--重复代码(Duplicate Code) 重复代码堪称为代码坏味道之首.消除重复代码总是有利无害的. 特征 两个代码片段看上去几乎一样. 问题原因 重复代码通常发生在多个程序员同时在同一程序 ...
- http status code
属于转载 http status code:200:成功,服务器已成功处理了请求,通常这表示服务器提供了请求的网页 404:未找到,服务器未找到 201-206都表示服务器成功处理了请求的状态代码,说 ...
- Visual Studio Code——Angular2 Hello World 之 2.0
最近看到一篇用Visual Studio Code开发Angular2的文章,也是一篇入门教程,地址为:使用Visual Studio Code開發Angular 2專案.这里按部就班的做了一遍,感觉 ...
- WebStorm 2016 最新版激活(activation code方式)
WebStorm 2016 最新版激活(activation code方式) WebStorm activation code WebStorm 最新版本激活方式: 今天下载最新版本的WebStorm ...
随机推荐
- 在Linux下搭建nRF51822的开发烧写环境(makefile版)
http://www.qingpingshan.com/m/view.php?aid=394836
- java类加载、对象创建过程
类加载过程: 1, JVM会先去方法区中找有没有相应类的.class存在.如果有,就直接使用:如果没有,则把相关类的.class加载到方法区 2, 在.class加载到方法区时,会分为两部分加载:先加 ...
- 字符串属性转变List属性存入数据库
项目中有系统IP字段,现将string转List存入数据库,每个功能块持久层实现方法不一样(分为jpa和mp) jpa: @Convert(converter = JpaConverterListJs ...
- [项目总结]论Android Adapter notifyDataSetChanged与notifyDataSetInvalidated无效原因
最近在开发中遇到一个问题,Adapter中使用notifyDataSetChanged 与notifyDataSetInvalidated无效,经过思考和网上查找,得出如下原因. 首先看一下notif ...
- iOS UIWebview 长按图片,保存到本地相册
我们所要解决的问题如题目所示:ios中,长按Webview中的图片,将图片保存到本地相册.解决方案:对load的html网页,执行js注入,通过在webview中执行js代码,来响应点击事件,通过js ...
- maven内存溢出解决方法
maven内存溢出(InvocationTargetException: PermGen space) 解决方案:maven脚本:mvn.bat文件@REM set MAVEN_OPTS=-Xdebu ...
- JDBC(3):PreparedStatement对象介绍
一,PreparedStatement介绍 PreperedStatement是Statement的子类,它的实例对象可以通过Connection.preparedStatement()方法获得,相对 ...
- Abp Vnext 替换Redis的实现为csredis
Host项目安装csredis的nuget包和data protect包并 移除 Microsoft.Extensions.Caching.StackExchangeRedis Microsoft.A ...
- 2、Redis的安装
一.Windows下Redis安装 下载地址 Redis中文网站 Github地址 1.将下载下来的文件解压到目录 2.双击redis-server.exe运行 出现如下界面证明运行成功 3.双击 ...
- python之异步编程
一.异步编程概述 异步编程是一种并发编程的模式,其关注点是通过调度不同任务之间的执行和等待时间,通过减少处理器的闲置时间来达到减少整个程序的执行时间:异步编程跟同步编程模型最大的不同就是其任务的切换, ...