- 2024-11-15A-B 数对
https://www.luogu.com.cn/problem/P1102include<bits/stdc++.h>definelllonglongusingnamespacestd;constintN=2e5+10;intn,c;inta[N];intmain(){cin>>n>>c;for(inti=1;i<=n;i++)cin>>a[i];sort(a
- 2024-10-14【C语言刷力扣】2206.将数组划分成相等数对
题目:解题思路: 题目中要求元素成数对出现,即每个元素出现偶数次。用哈希表存放每个数出现的次数,再循环查看每个数的次数是否位偶数。typedefstruct{intkey;intcount;UT_hash_handlehh;}hashEntry;booldivideArray(int*nums,intnumsS
- 2024-10-14题解:P11063 【MX-X4-T3】「Jason-1」数对变换
ProblemLink【MX-X4-T3】「Jason-1」数对变换题外话场上把贪心注重在一个奇怪地方了,导致交的时候已经有\(9\)个人\(\textcolor{green}{AC}\)了(哭)。题意简述对于数对\((x,y)\),你可以执行以下两种变换:类型1:取\(1\lek\lex\),令\((x,y)\gets(\lfloor\frac{x}{k}
- 2024-10-13最长数对链的长度
给你一个由 n 个数对组成的数对数组 pairs ,其中 pairs[i]=[lefti,righti] 且 lefti <righti 。现在,我们定义一种 跟随 关系,当且仅当 b<c 时,数对 p2=[c,d] 才可以跟在 p1=[a,b] 后面。我们用这种形式来构造 数对链 。找出并返回能够形成的 最
- 2024-10-12洛谷P1102 A-B数对
A-B数对题目背景出题是一件痛苦的事情!相同的题目看多了也会有审美疲劳,于是我舍弃了大家所熟悉的A+BProblem,改用A-B了哈哈!题目描述给出一串正整数数列以及一个正整数\(C\),要求计算出所有满足\(A-B=C\)的数对的个数(不同位置的数字一样的数对算不同的数对)。输入格
- 2024-10-113164. 优质数对的总数 II
给你两个整数数组nums1和nums2,长度分别为n和m。同时给你一个正整数k。如果nums1[i]可以被nums2[j]*k整除,则称数对(i,j)为优质数对(0<=i<=n-1,0<=j<=m-1)。返回优质数对的总数。示例1:输入:nums1=[1,3,4],nums2=[1,3,4],k=1输出:5解释:5
- 2024-10-10洛谷 P7517 [省选联考 2021 B 卷] 数对
题目传送门解题思路其实你只要知道:这题你就秒了。我们发现 ,于是开一个桶来统计每个数出现的数量。我们只需要枚举每一个数的倍数,然后统计。最后,如果一个数出现了多次,再特判一下即可。代码#include<bits/stdc++.h>usingnamespacestd;intn;intcnt[500001];
- 2024-10-103162. 优质数对的总数 I
给你两个整数数组nums1和nums2,长度分别为n和m。同时给你一个正整数k。如果nums1[i]可以被nums2[j]*k整除,则称数对(i,j)为优质数对(0<=i<=n-1,0<=j<=m-1)。返回优质数对的总数。示例1:输入:nums1=[1,3,4],nums2=[1,3,4],k=1输出:5解释:5
- 2024-09-20P11063 【MX-X4-T3】「Jason-1」数对变换
题意你有一个有序数对\((x,y)\),每次你可以选择其中一个数并指定一个整数\(k\),然后将你选的那个数除以\(k\)下取整,另外一个数乘\(k\)。你现在想要把\((a,b)\)变换成\((c,d)\)构造一组在65步解决问题的方案,或报告无解。\(1\lea,b,c,d\le10^9\)分析这题的突破口在于
- 2024-09-10Leetcode3265. 统计近似相等数对 I
EverydayaLeetcode题目来源:3265.统计近似相等数对I解法1:枚举暴力枚举数组nums中下标i和j满足i<j的nums[i]和nums[j],判断它们是否近似相等。细节:先对数组nums升序排序,在判断它们是否近似相等,转成字符串进行比较,且只交换较大数的数位。代码:/**@l
- 2024-09-092563. 统计公平数对的数目
题目链接2563.统计公平数对的数目思路排序+二分(upper_bound-lower_bound)题解链接两种方法:二分查找/三指针(Python/Java/C++/Go)关键点排序并不影响答案(数对数量未变化)时间复杂度\(O(n\logn)\)空间复杂度\(O(1)\)代码实现:classSolution:d
- 2024-08-25【编程基础】亲密数对
题目描述键盘输入N,N在2至2000之间,求2至N中的亲密数对,就是A的因子和等于B,B的因子和等于A,且A≠B。如48和75是亲密数对。48的因子和为2+3+4+6+8+12+16+24=75,而75的因子和为3+5+15+25=48。输入只有一行,为一个整数N(2<=N<=2000)输出输出若干行,每行两个整数(用一个空格隔开)。样
- 2024-08-15洛谷——P1102 A-B 数对
题目背景出题是一件痛苦的事情!相同的题目看多了也会有审美疲劳,于是我舍弃了大家所熟悉的A+BProblem,改用A-B了哈哈!题目描述给出一串正整数数列以及一个正整数CCC,
- 2024-07-28洛谷Day1--P1102 A-B数对 P1163 银行贷款
目录一、引言二、题目及题解题目一:P1102A-B数对题目链接题解:哈希 题目二:P1163银行贷款题目链接题解:二分 三、小结一、引言今天是周日,代码随想录训练营的打卡休息一天。想着刷一点题巩固一下之前的所学,就做了两道洛谷的题,一道用的哈希(也可以二分,个人感觉麻烦
- 2024-07-02(nice!!!)LeetCode 3164. 优质数对的总数 II(数组、哈希表)
3164.优质数对的总数II思路:先找出可以被k整除的nums[i].方法一:统计因子。1、找出数组nums1每个元素的因子,用哈希表来记录每个因子出现的次数。然后再遍历数组nums2进行累加即可。classSolution{public:constintN=1e6+10;longlongnumberOfPairs(vec
- 2024-06-222024数学高考压轴题
2024数学高考压轴题题面懒得打,直接放。解(1)\((1,2),(5,6),(1,6)\)。(2)考虑,\(a_1,a_3,a_4,\dots,a_12,a_14\),可以通过这样的方式分成\(3\)个等差数列:\[\begin{matrix}a_1,a_4,a_7,a_{10};\\a_3,a_6,a_9,a_{12};\\a_5,a_8,a_{11},a_{14}.\end{matrix}\]使
- 2024-06-16C++题解—1140—亲密数对(东方博宜OJ)
题目描述:键盘输入 N,N 在2至 2000之间,求 2 至 N 中的亲密数对,就是A的因子和等于B,B的因子和等于A ,且A≠B。如 48和 75是亲密数对。48的因子和为2+3+4+6+8+12+16+24=75 ,而 75的因子和3+5+15+25=48 。输入:只有一行,为一个整数 N( 2≤N≤2000 )。输出:输出
- 2024-06-13【ZZULIOJ】1105: 判断友好数对(函数专题)
题目描述输入两个正整数m和n,顺序输出m到n之间的所有友好数对。如果两个整数的所有正因子之和(包括1,不包括自身)等于对方,就称这对数是友好的。例如:1184和1210是友好数对,因为1184的因子之和为1+2+4+8+16+32+37+74+148+296+592=12101210的因子之和为1+2+5+10+11+22+55+110+121+2
- 2024-05-26100321. 优质数对的总数 II
题目描述给你两个整数数组nums1和nums2,长度分别为n和m。同时给你一个正整数k。如果nums1[i]可以被nums2[j]*k整除,则称数对(i,j)为优质数对(0<=i<=n-1,0<=j<=m-1)。返回优质数对的总数。思路nums1[i]可以被nums2[j]*k整除,那么nums2[j]*k
- 2024-03-31洛谷P1102 A-B数对
双指针做法: 反过来,从后往前看也是一样的:#include<iostream>#include<stdio.h>#include<algorithm>#include<string>#include<cmath>#defineFor(i,j,n)for(inti=j;i<=n;++i)usingnamespacestd;constintN=2e5+5;int
- 2024-03-28P6105 [Ynoi2010] y-fast trie
[Ynoi2010]y-fasttrie-洛谷这道题让我学到了一些之前看过但没总结出来的\(trick\)显然加入集合中数要先取模对于\(x+y\geqC\)的部分,直接取最大和次大即可对于\(x+y<C\)的部分,我们先考虑暴力枚举\(x\),二分找到每一个\(y\)取最优即可若此题离线,考
- 2024-03-21洛谷题单指南-集合-P1102 A-B 数对
原题链接:https://www.luogu.com.cn/problem/P1102题意解读:前文https://www.cnblogs.com/jcwy/p/18043197介绍了二分和双指针的做法,本文介绍hash的做法。解题思路:定义map<int,int>h,保存每个数+c出现的个数同样,先将所有数由小到大哦排序遍历每一个数x,答案累加ans+=h[x]然
- 2024-03-19CPU的核心数与线程数对性能的影响是什么
我们经常在CPU的配置参数中看到核心数和线程数,那你知道CPU的核心数与线程数对性能的影响是什么呢?核心数和线程数是越多越好吗?要弄清楚这个问题,我们必须先了解以下几个基础知识。什么是CPU核心?CPU核心,也称为处理器核心,是CPU的基本处理单元。每个核心都包含独立的算术逻辑单元、
- 2024-02-29洛谷题单指南-二分查找与二分答案-P1102 A-B 数对
原题链接:https://www.luogu.com.cn/problem/P1102题意解读:寻找A-B=C的数对数量,C大于0,B一定比A小,枚举B,找A是否存在即可。解题思路:先将数据由小到大排序,接下来介绍两种方法:二分、双指针1、二分枚举第1~n-1个数,作为B,寻找A=B+C的数量,只需要通过二分查找第一A和最后一个A的位置l、
- 2024-02-14P1102 A-B 数对
题目链接:一开始的想法:排序后枚举,但这样显然是\(O(n^2)\)的复杂度,会超时#include<cstdio>#include<algorithm>constintN=2e5+5;inta[N];intmain(){intn,c,res=0;scanf("%d%d",&n,&c);for(inti=0;i<n;i++)scan