题目链接:http://codeforces.com/problemset/problem/1225/D

题意:有多少种组合方式,使得两个数相乘 能写成 x^k 的形式

题解:首先x^k,x的每个素因子的数目都是k的倍数,那么我们就对于每个数的素因子个数哈希一下,对于每个数求值的时候,找到能使他的每个素因子个数为k的倍数的哪些数。

#include <bits/stdc++.h>
#include <tr1/unordered_map>
using namespace std;
typedef unsigned long long ll;
const int N = 1e5 + 10;
int n, m;
int a[N];
ll has[100010];
int ok[100010], prime[100010], len;
tr1::unordered_map<ll, ll> mp;
tr1::unordered_map<ll, int> id;
void init() {for(int i = 2; i <= 100000; i++) {if(!ok[i]) {prime[len++] = i;id[i] = len - 1;}for(int j = 0; j < len && (ll) i * prime[j] <= 100000; j++) {ok[i * prime[j]] = 1;if(i % prime[j] == 0) break;}}
}
int main() {has[0] = 1;for(int i = 1; i <= 100000; i++) has[i] = has[i - 1] * 233;init(); ll cnt1, cnt2, ans = 0;int num;scanf("%d %d", &n, &m);for(int i = 1; i <= n; i++) {scanf("%d", &a[i]);cnt1 = cnt2 = 1;for(int j = 0; j <= 400; j++) {num = 0;if(a[i] % prime[j] == 0) {while(a[i] % prime[j] == 0) a[i] /= prime[j], num++;}num %= m;cnt1 = cnt1 + num * has[j]; cnt2 = cnt2 + (m - num) % m * has[j];}if(a[i] != 1) {cnt1 = cnt1 + has[id[a[i]]];cnt2 = cnt2 + has[id[a[i]]] * (m - 1);}ans += mp[cnt2];mp[cnt1]++; }printf("%lld\n", ans);return 0;
} 

1225 D. Power Products 哈希相关推荐

  1. CF1225D Power Products (数论)

    CF1225D Power Products (数论) 传送门:https://codeforces.com/problemset/problem/1225/D 题目大意:给定长度为 nnn 的数组 ...

  2. Educational Codeforces Round 101 (Rated for Div. 2) F. Power Sockets 哈希 + 乱搞

    传送门 题意: 给一个二进制串aaa,让后定义两个串相似为有至少一个相同位置相等.现在让你找一个字典序最小的长度为kkk的串使其与aaa中每个长度为kkk的字串相似. 思路: 首先我们知道所有可能的串 ...

  3. Codeforces 1247D. Power Products (logn质因数分解)

    前言废话:最近一直调参-鸽了好久训练- 这个题也是神奇,以前我都不知道质因数分解能logn,以为要sqrt(n)- 大致题意 给一个长度为 n 的序列 (1 <=ai <=100000,2 ...

  4. 中国金属复合开关设备市场趋势报告、技术动态创新及市场预测

    出版商:贝哲斯咨询 获取报告样本: 企业竞争态势 金属复合开关设备市场报告涉及的主要国际市场参与者有EKOSinerji.Eaton.GE Industrial Solutions.Siemens.A ...

  5. app4788usvod3html,ROBOHAND RPLC-3

    FP75R12KE3 Manu:EUPEC Encapsulation:​MODULEElektri​sche Eigenschaften x1 Zytec 22927480 Baynet 620 W ...

  6. 常见的USB VID

    常见的USB VID:(遇到再更新) 03f0 Hewlett-Packard 040a Kodak Co. 04b8 Seiko Epson Corp. 0eef D-WAV Scientific ...

  7. 2022-2028全球与中国变压器测试服务市场现状及未来发展趋势

    辰宇信息咨询市场调研公司最近发布-<2022-2028全球与中国压器测试服务市场调研报告> 内容摘要 本文重点分析在全球及中国有重要角色的企业,分析这些企业变压器测试服务产品的市场规模.市 ...

  8. 2022-2028全球与中国电源连接器市场现状及未来发展趋势

    根据QYR(恒州博智)的统计及预测,2021年全球电源连接器市场销售额达到了22亿美元,预计2028年将达到30亿美元,年复合增长率(CAGR)为4.6%(2022-2028).地区层面来看,中国市场 ...

  9. 全球及中国锂离子UPS系统行业市场供求分析与投资战略规划研究报告2022-2028年

    全球及中国锂离子UPS系统行业市场供求分析与投资战略规划研究报告2022-2028年 详情内容请咨询鸿晟信合研究院! [全新修订]:2022年3月 [撰写单位]:鸿晟信合研究网 2021年全球锂离子U ...

最新文章

  1. python直方图均衡化
  2. 查询当前oracle字符集,查询修改oracle当前字符集-转
  3. AXI3和AXI4协议详细说明
  4. 优秀的培训机构该如何培养学生?
  5. final 实例域+final类+final方法(阻止继承)
  6. c mysql 添加数据类型_MYSQL的常用命令和增删改查语句和数据类型
  7. 15/7/2017 暑期第一次集训小总结
  8. JS键盘事件对象之keyCode、charCode、which属性对比
  9. Excel数据转换成SQL
  10. python批量处理图片统一尺寸
  11. 完美解决Mac无法写入NTFS硬盘——Mounty for NTFS
  12. php活动倒计时代码,JavaScript实现活动倒计时效果的代码分享
  13. 大龄程序猿的出路在哪里
  14. 林轩田之机器学习课程笔记( embedding numerous feature之support vector regression)(32之22)
  15. 《平安夜》钢琴谱上的虚线表示什么?
  16. 一篇博客让你横扫数电常考所有集成电路芯片(已更新50%持续更新)
  17. 刘宇辰java_大家帮忙取名字啊
  18. 如何与不使用Apple产品的朋友共享iCloud照片
  19. 花园体育馆计算机房音乐教室的英语,四年级英语下册pep知识点复习.ppt
  20. 【转】了解webservice

热门文章

  1. 计算机移动应用技术与服务,计算机移动技术应用探究
  2. 计算机四级证书难考吗 考试内容是什么?
  3. Mysql 1607错误
  4. nmap与hydra
  5. 河南朱砂服务器位置,探访河南境内规模最大的龙山遗址 龙山大墓主人头部疑似涂有朱砂...
  6. sqlserver varbinary to base64
  7. vue的sync修饰符
  8. 【大厂面试】堆的内存结构及GC垃圾回收机制
  9. vue 悬浮图标_vue实现可拖拽移动悬浮球
  10. VUE中:printJS使用,附带JsBarcode条码生成器,网页转图片html2canvas,base64上传保存处理,二维码生成库qrcode,二维码/条码扫描识别,domtoimage