Prime

Time Limit: 3 Sec  Memory Limit: 128 MB
Submit: 84  Solved: 12
[Submit][Status][Web Board]

Description

如果a,b的最大公约数是1,说明a,b是一对互素的数,给定你n个数字,希望你找出互素的数的对数

Input

第一行输入一个正整数T,表示数据组数

每组数据第一行输入一个正整数n,表示数字的个数(n<=10000)

接下来一行输入n个正整数,每个数字大小不超过1000。

Output

输出互素的数的对数

Sample Input

1
4
10 9 6 35

Sample Output

3

数字有10000个,暴力肯定要炸,但是数字范围只有 1000 ,那么我们可以去重后计数利用乘法原理再算。这样暴力的话就只有10^6了,1要特判(2016湘潭赛有个题很像)
#include <iostream>
#include <cstring>
#include <stdio.h>
#include <stdlib.h>
#include <algorithm>
using namespace std;
int num[1005];
int gcd(int a,int b){return b==0?a:gcd(b,a%b);
}
int main()
{int tcase,n;int a[10005];scanf("%d",&tcase);while(tcase--){memset(num,0,sizeof(num));scanf("%d",&n);for(int i=1;i<=n;i++){scanf("%d",&a[i]);}sort(a+1,a+1+n);num[a[1]]++;int k=1;for(int i=2;i<=n;i++){if(a[i]==a[i-1]){num[a[i]]++;continue;}a[++k] = a[i];num[a[i]]++;}long long ans=0;for(int i=1;i<=k;i++){for(int j=1;j<=i;j++){if(gcd(a[i],a[j])==1&&a[i]!=a[j]){ans+=(long long)num[a[i]]*num[a[j]];}else if(a[i]==1&&num[a[i]]>1){ans+=num[a[i]]*(num[a[i]]-1)/2;}}}printf("%lld\n",ans);}return 0;
}

转载于:https://www.cnblogs.com/liyinggang/p/5766772.html

csu 1756(数论+去重)相关推荐

  1. python【蓝桥杯vip练习题库】ALGO-190素因子去重(数论 递归)

    试题 算法训练 素因子去重 资源限制 时间限制:1.0s 内存限制:256.0MB 问题描述 给定一个正整数n,求一个正整数p,满足p仅包含n的所有素因子,且每个素因子的次数不大于1 输入格式 一个整 ...

  2. CSU 1803 2016(数论)

    2016 Problem Description: 给出正整数 n 和 m,统计满足以下条件的正整数对 (a,b) 的数量: 1≤a≤n,1≤b≤m; a×b 是 2016 的倍数. Input: 输 ...

  3. 【蓝桥杯官网试题 -算法训练】素因子去重(数学,数论,因子约数)

    题干: 问题描述 给定一个正整数n,求一个正整数p,满足p仅包含n的所有素因子,且每个素因子的次数不大于1 输入格式 一个整数,表示n 输出格式 输出一行,包含一个整数p. 样例输入 1000 样例输 ...

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

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

  5. CSU 1113 Updating a Dictionary(map容器应用)

    题目链接:http://acm.csu.edu.cn/OnlineJudge/problem.php?id=1113 解题报告:输入两个字符串,第一个是原来的字典,第二个是新字典,字典中的元素的格式为 ...

  6. 数学/基础数论——从LeetCode题海中总结常见套路

    今天是大年初一,祝大家新年快乐! 目录 基础数论求质数:LeetCode204.计数质数 常规解法: 娱乐一下:偷鸡式解法 埃拉托色尼筛选法 统计5因子的个数:LeetCode172.阶乘后的零 暴力 ...

  7. 洛谷P4495 奇怪的背包 [HAOI2018] 数论

    正解:数论+dp 解题报告: 传送门! 首先看到这题,跳无数次,自然而然可以想到之前考过好几次了的一个结论--如果只考虑无限放置i,它可以且仅可以跳到gcd(p,v[i]) 举一反三一下,如果有多个i ...

  8. AcWing蓝桥杯AB组辅导课08、数论

    文章目录 前言 一.数论 例题 例题1:AcWing 1246. 等差数列(最大公约数,第十届蓝桥杯省赛C++B第7题) 分析 题解:最大公约数 例题2:AcWing 1295. X的因子链(算数基本 ...

  9. 【ACM】kuangbin基础数论专题

    知识补充:裴蜀定理 1.Bi-shoe and Phi-shoe 1.题意 给出一行数,求对应的数的欧拉函数值大于给出的数的数的最小和. 2.思路 我们知道素数表的欧拉函数值递增. 设素数a,b,b是 ...

最新文章

  1. 正则表达式贪婪与懒惰
  2. C++ 异常处理Demo - win32 版
  3. Linux Kernel中gicv3实现:SPIs中断routing到指定的CPU
  4. HDU1576 A/B 费马小定理
  5. 进击的Android Hook 注入术《一》
  6. java基础入门答案谭晓芳,原理+实战讲解
  7. txt文本变为粗体_如何在PHP中使文本变为粗体?
  8. Shopee:阿里神话被打碎,东南亚第一电商平台的崛起史
  9. 高等代数中的名词解析-No1
  10. Linux C编程如何使用联机帮助来解决编程问题?
  11. 夺命雷公狗---Smarty NO:19 html_options函数
  12. ecs服务器换系统,ecs服务器更换操作系统
  13. cilium插件测试_Cilium网络概述
  14. Velox将在Pangolin上启动其算法交易机器人,并计划推出更多DeFi解决方案
  15. 修改Cocos2d-xV3.17.2项目模板的编译路径
  16. VB.net Socket Udp收、发数据包示例源码
  17. 【Android工具】更新QMD音乐下载软件,MP3音乐下载器
  18. PPT设计网站 驼峰设计
  19. 【数字设计与计算机体系结构】2021-09-26-数字设计与计算机体系结构课程(四)
  20. 标准盒模型 与 怪异盒模型

热门文章

  1. db4o Tutorial 中文翻译(十一)
  2. 如何访问MATLAB Builder for .NET Components
  3. 计算机也可以看“视频”,理解“视频”
  4. redmine 一键安装
  5. SURF算法与源码分析、上
  6. GPU 2014年4月 性能排名
  7. RPA女子计划—面向日本女性的工作方式改革
  8. 【OpenGL】用OpenGL shader实现将YUV(YUV420,YV12)转RGB-(直接调用GPU实现,纯硬件方式,效率高)...
  9. Exchange Server 2019新功能预览-揭秘被削减的功能
  10. java笔记--关于线程同步(7种同步方式)