AT_abc342_d 题解
UD 2024/2/24 22:36 感谢 Lixiang_is_potato 指出一处笔误。
本文同步发表于洛谷。
赛时挂了,但是赛后 3min AC,我是飞舞。
题意
给你一个长度为 \(N\) 的非负整数序列 \(A=(A_1,\ldots,A_N)\)。求满足以下两个条件的整数对 \((i,j)\) 的个数:
\(A_i A_j\) 是一个平方数且 \(1\leq i<j\leq n\)。
懒得提交翻译
思路
显然,\(A_i\) 的平方因子对他自己一点用都没有。
所以我们先给它的平方因子除掉,剩下的 \(A_i\) 中相等的两两配对。
但要注意 \(0\),它可以和其他任何数相乘(\(0\) 也是平方数)!
代码
由于我的宏定义又臭又长我就删掉了。
LL n,a[200010],ans,sum,f[200010];
int main()
{
cin>>n;
rep(i,1,n,1)
{
cin>>a[i];
for(LL j=2;j*j<=a[i];j++)//错
{
while(a[i]%(j*j)==0)
{
a[i]/=(j*j);
}
}
f[a[i]]++;
if(!a[i])ans++;
}
rep(i,0,200000,1)
{
sum+=f[i]*(f[i]-1)/2;
}
sum+=ans*(n-ans);
cout<<sum<<endl;
return 0;
}
小结
其实很感慨,赛时我代码里面打注释“错” 的那行我 \(j\) 的初值设成 \(1\) 了,调了好久… 导致直接掉分。
所以,衷心祝愿所有 OIer 能正常发挥,不犯太多错误,在比赛中取得好成绩!
AT_abc342_d 题解的更多相关文章
- 2016 华南师大ACM校赛 SCNUCPC 非官方题解
我要举报本次校赛出题人的消极出题!!! 官方题解请戳:http://3.scnuacm2015.sinaapp.com/?p=89(其实就是一堆代码没有题解) A. 树链剖分数据结构板题 题目大意:我 ...
- noip2016十连测题解
以下代码为了阅读方便,省去以下头文件: #include <iostream> #include <stdio.h> #include <math.h> #incl ...
- BZOJ-2561-最小生成树 题解(最小割)
2561: 最小生成树(题解) Time Limit: 10 Sec Memory Limit: 128 MBSubmit: 1628 Solved: 786 传送门:http://www.lyd ...
- Codeforces Round #353 (Div. 2) ABCDE 题解 python
Problems # Name A Infinite Sequence standard input/output 1 s, 256 MB x3509 B Restoring P ...
- 哈尔滨理工大学ACM全国邀请赛(网络同步赛)题解
题目链接 提交连接:http://acm-software.hrbust.edu.cn/problemset.php?page=5 1470-1482 只做出来四道比较水的题目,还需要加强中等题的训练 ...
- 2016ACM青岛区域赛题解
A.Relic Discovery_hdu5982 Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 65536/65536 K (Jav ...
- poj1399 hoj1037 Direct Visibility 题解 (宽搜)
http://poj.org/problem?id=1399 http://acm.hit.edu.cn/hoj/problem/view?id=1037 题意: 在一个最多200*200的minec ...
- 网络流n题 题解
学会了网络流,就经常闲的没事儿刷网络流--于是乎来一发题解. 1. COGS2093 花园的守护之神 题意:给定一个带权无向图,问至少删除多少条边才能使得s-t最短路的长度变长. 用Dijkstra或 ...
- CF100965C题解..
求方程 \[ \begin{array}\\ \sum_{i=1}^n x_i & \equiv & a_1 \pmod{p} \\ \sum_{i=1}^n x_i^2 & ...
- JSOI2016R3 瞎BB题解
题意请看absi大爷的blog http://absi2011.is-programmer.com/posts/200920.html http://absi2011.is-programmer.co ...
随机推荐
- vs code python(Pylance server) crash
The Pylance server crashed 5 times in the last 3 minutes. The server will not be restarted. See the ...
- 关于git pull机制和游戏开发热更新思考
前言 今天由于网速很慢,在git pull更新时我观看了git pull的日志,让我联想到和我现在从事的游戏开发中的热更热有一定的相似性,把思绪记录下来. git pull 日志 使用tortoi ...
- Vue双向数据绑定原理-中
defineProperty方法 defineProperty除了可以动态修改/新增对象的属性以外, 还可以在修改/新增的时候给该属性添加get/set方法, 从而实现数据劫持. defineProp ...
- 大语言模型的预训练4:指示学习Instruction Learning详解以及和Prompt Learning,In-content Learning区别
大语言模型的预训练[4]:指示学习Instruction Learning:Entailment-oriented.PLM oriented.human-oriented详解以及和Prompt Lea ...
- MySQL使用遇到问题总结
1.mysql安装好后在控制台输入命令后无反应 这是就要注意: show databases; 第一:databases是要加"s"结尾 第二:如果加了s仍无反应,看是否加了&qu ...
- 1.基于Label studio的训练数据标注指南:信息抽取(实体关系抽取)、文本分类等
文本抽取任务Label Studio使用指南 1.基于Label studio的训练数据标注指南:信息抽取(实体关系抽取).文本分类等 2.基于Label studio的训练数据标注指南:(智能文档) ...
- 4.1 C++ Boost 字符串处理库
Boost 库是一个由C/C++语言的开发者创建并更新维护的开源类库,其提供了许多功能强大的程序库和工具,用于开发高质量.可移植.高效的C应用程序.Boost库可以作为标准C库的后备,通常被称为准标准 ...
- Bootstrap Table 动态修改行的颜色
Bootstrap Table 官网地址 https://bootstrap-table.com/百度搜了大量资料 还是找不 动态改变行的颜色,一般搜索到的都是 初始化的时候 使用 rowStyle ...
- libuv计时器
目录 1.uv_timer_t - 计时器句柄 2.API 2.1.uv_timer_init 2.2.uv_timer_start 2.3.uv_timer_stop 2.4.uv_timer_ag ...
- Vulkan学习苦旅05:马不停蹄地渲染(创建交换链VkSwapchainKHR)
通俗地说,渲染图像就是为图像的每个像素选择合适的颜色.例如,如果图像的分辨率为1920x1080,表示图像中有1920x1080个像素,渲染的过程,就是为每个位置的像素计算出合适的颜色.具体来说,假设 ...