- 博客(15)
- 收藏
- 关注
原创 高精度计算
加法:for(i=0;i<m;i++)t=t+a[i];if(i<n)t=t+b[i];c[i]=t%10;t=t/10;if(t)c[i]=1;j>=0;j--)elsej>=0;j--)int main()i>=0;i--)i>=0;i--)减法:return 1;i++)if(a[i]!=b[i])return 1;
2026-03-31 20:32:15
192
原创 经典位运算和计算各进制下的各位数字之和
(num & (num - 1)) 是检测2的幂的经典位运算方法,结果为0即为2的幂 if ((num & (num - 1))!
2026-03-25 21:22:20
31
原创 和数的各位数字有关的题目
int ans=0;i++)int num=i;return 0;int ans=0;i<=202504;i++)int num=i;int tmp=0;num/=10;ans++;return 0;
2026-03-25 11:24:32
27
原创 一维坐标下的最小总距离分配
int main()int n=0;i<n;i++)i<n;i++)ll ans=0;i<n;i++)return 0;
2026-03-24 20:48:43
27
原创 空间切割问题
把上面所有等式的「左边相加」和「右边相加」,得到:g(1)+g(2)+g(3)+...+g(k−1)=[g(0)+1]+[g(1)+2]+[g(2)+3]+...+[g(k−2)+(k−1)]。递推公式:g(k) = g(k-1) + k(初始条件:g(0)=1,0 条直线时平面是 1 个区域)。递推公式:p(k) = p(k-1) + 4(k-1) + 1(初始条件:p(0)=1,p(1)=2)通项公式:p(k) = 2k² - k + 1。时:g(k−1)=g(k−2)+(k−1)
2025-11-27 21:07:14
431
原创 并查集和最小生成树
/ 若根不同,将a的根挂到b的根下(简单合并,不考虑树的高度)if (used == n-1) printf("%lld\n", ans);= findp(v)) { // 若u和v不在同一集合(不连通)void unite(int a,int b){ // 合并a和b所在的集合(简化版,无按秩合并)
2025-11-14 21:54:30
802
原创 三分查找问题
函数需要满足:在定义域内是单峰函数,先严格递增后严格递减,存在唯一最大值,或先严格递减后严格递增,存在唯一最小值;且在定义域内连续且可比较大小。若 f(m1) < f(m2):说明最大值在 [m1, right] 内(左侧区间 [left, m1] 可舍弃)若 f(m1) > f(m2):说明最大值在 [left, m2] 内(右侧区间 [m2, right] 可舍弃)若 f(m1) == f(m2):最大值在 [m1, m2] 内(两端区间可舍弃),函数在该区间内先增后减。这时候可以使用三分查找。
2025-10-31 20:45:43
390
原创 二分查找问题
使用条件:待查找的序列必须是有序的,且单调递增或者单调递减,用于有序序列或者已经排序的数组。目标值,说明目标在左半区间,更新右边界(目标值,说明目标在右半区间,更新左边界(重复上述步骤,直到找到目标或区间无效(习惯于用中间值mid来对比。(数组下标从 0 开始),目标值,查找成功,返回。,恰好等于目标,返回。
2025-10-31 20:18:18
752
原创 快速幂运算内容
/a %= mod;while (b)b = b / 2;return ans;int main()int n;return 0;while (b)b = b / 2;return ans;int main()int n;= EOF)int a = 1;= 1)a++;return 0;
2025-10-31 19:28:56
373
原创 10.26上午leetcode周赛
include <stdlib.h> 包含标准库函数,如字符串转整数的函数astoll。idx是数组res下标的索引值,res[idx++]=str[i]相当于res[idx]=str[i];sprintf作用是:格式化输出函数,将n按照%lld(长整型格式)转换为字符串,结果存储在str字符数组中。使用long long长整型,可以输入更长的数字,同时返回的时候也是long long类型,防止溢出。思路:构造一个新函数,输入一组数字,使其在遇到非0的数字的时候输出。
2025-10-27 21:01:22
138
原创 25.10.22
使用最小值的思想,1.当牛可乐出石头的时候,只需要看牛牛出了多少次的布(因为题目要求的是牛牛赢的次数,故出剪刀和石头的次数都不计入其中)取两者的较小值;2.可乐出剪刀只用看牛牛出的石头次数;3.可乐出布只用看牛牛出剪刀的次数,依旧取两者之间的较小值。616是由2个6和1个1,我们需要统计数字串中的6的数量cnt6和1的数量cnt1。= '\0' 理论上相当于i<n, C 语言没有专门的 “字符串类型”,字符串本质是字符数组,但必须在数组的最后一个有效字符后面,额外存储一个特殊字符。
2025-10-27 19:54:58
211
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人
RSS订阅