摘要: 给出一个数字 digit ,检验是否能够被 x 和 x+1 均匀分开: 首先记 q = digit / x, m = digit % x 如果 q >= m, 则可以将 m 个 1 均匀分配到前 m 个 x 中,变成 x+1 充分必要条件 阅读全文
posted @ 2023-10-22 16:43 Besnnad 阅读(11) 评论(0) 推荐(0)
摘要: C n / a, b, c :结果为 n! / a! / b! / c! 快速幂算法 ksm : 点击查看代码 ll ksm(ll cur, int times) { ll base = cur; ll res = 1; while (times) { if ((times & 1) == 1) { 阅读全文
posted @ 2023-04-18 09:54 Besnnad 阅读(30) 评论(0) 推荐(0)
摘要: 偶数为 n/2 奇数为 (n+1)/2 点击查看代码 ListNode* slow = head, *fast = head; while (fast->next != nullptr && fast->next->next != nullptr) { slow = slow->next; fast 阅读全文
posted @ 2023-04-06 09:27 Besnnad 阅读(24) 评论(0) 推荐(0)
摘要: val & AND | OR : 在这之后再进行与或运算: 或上 c : 等价于 val & AND | (OR | c) 与上 c : 等价于 val & (AND & c) | (OR & c) 注:一定要先进行 & 运算,再进行 | 运算 阅读全文
posted @ 2023-04-05 21:28 Besnnad 阅读(65) 评论(0) 推荐(0)
摘要: 生成 Pattern 的字符串的 next 数组,长度为 m+1 点击查看代码 void getNext(vector<int>& next, string& pattern) { int n = pattern.size(); for (int j = 0, k = -1; j < n; ) { 阅读全文
posted @ 2023-04-03 22:14 Besnnad 阅读(17) 评论(0) 推荐(0)
摘要: 点击查看代码 void getPrime(long long n, vector<int>& prime, vector<bool>& isPrime) { isPrime[1] = false; for (int i = 2; i < n; ++i) { if (isPrime[i]) { pri 阅读全文
posted @ 2023-04-03 22:08 Besnnad 阅读(31) 评论(0) 推荐(0)
摘要: IP地址转换函数(仅适用于 ipv4 ) inet_addr(char*):将 十进制地址 转换为 网络字节序 的IPV4地址 inet_aton(char* cp, struct in_addr* inp):和 inet_addr 一样,但是将结果存储于 inp。 char* inet_ntoa( 阅读全文
posted @ 2023-04-02 16:30 Besnnad 阅读(37) 评论(0) 推荐(0)
摘要: grep 相关命令 grep -h -BG | sort -rn | head -n 3 递归查询最大的三个文件(夹) -BG:以 GB 为单位输出大小 -r : 将结果反向输出(降序) -n:只以字符串的数组进行排序 -n :以行的形式输出 阅读全文
posted @ 2023-04-02 13:55 Besnnad 阅读(17) 评论(0) 推荐(0)
摘要: tcp_syn_retries 发送 SYN 请求重试次数 设置地址: /proc/sys/net/ipv4/tcp_syn_retries 默认设置成 6,代表在 syn 请求超时的情况下重发 6 次,每次的等待时间为 2 ^ times ,即 2s, 4s, 8s, 16s, 32s, 64s( 阅读全文
posted @ 2023-04-02 11:12 Besnnad 阅读(162) 评论(1) 推荐(0)