- 博客(20)
- 资源 (3)
- 收藏
- 关注
原创 C语言实现栈
代码#include <stdio.h>#include <stdlib.h>//链表的栈typedef struct Node { //链表节点的自定义数据类型 int val; struct Node *next;} Node;typedef struct Stack { Node *head;} Stack;Node *initNode(int val) { //初始化链表节点 Node *n = (Node *)mal.
2021-07-27 13:57:07 86
原创 C++ STL笔记
CPP网址STL六大组件容器 算法 迭代器 适配器 仿函数 分配器string字符串#includesize(), length() 获得长度find() 查找 形参有1个或2个string::npos 值为-1,字符串末尾insert() 插入substr() 字符串截取replace() 替换 形参有3个#include reverse(str.begin(), str.end()) : 可以将字符串反转vector不定长数组#.
2021-07-27 11:00:13 121
原创 二分特殊情况
二分特殊情况第一种:000…000111…111 查找第一个1while (l != r) { mid = (l + r) / 2; l = mid + 1; r = mid;}第二种:111…111000…000 查找最后一个1while (l != r) { mid = (l + r + 1) / 2; // +1避免死循环 例 1 0 l = mid; r = mid - 1;}...
2021-07-13 15:53:38 72
原创 欧拉计划13: 大和 Large sum
题目描述求以下一百个50位数之和的前十位数字。Work out the first ten digits of the sum of the following one-hundred 50-digit numbers.3710728753390210279879799822083759024651013574025046376937677490009712648124896970078050417018260538743249861995247410594742333095130581237.
2021-07-08 10:54:45 124
原创 欧拉计划30: 各位数字的五次幂 Digit fifth powers
题目描述结果#include<iostream>#include<cmath>using namespace std;int num[10] = {0, 1, (int)pow(2, 5), (int)pow(3, 5), (int)pow(4, 5), (int)pow(5, 5), (int)pow(6, 5), (int)pow(7, 5), (int)pow(8, 5), (int)pow(9, 5)};bool func(int x) { .
2021-07-05 15:28:37 201
原创 欧拉计划33: 消去数字的分数 Digit cancelling fractions
题目描述结果#include<iostream>using namespace std;bool func(int a, int b) { //a分子 b分母 int n1 = a / 10, n2 = a % 10; int m1 = b / 10, m2 = b % 10; if (!n2 || !m2) return false; if((n1 == m1 && a * m2 == b * n2) || .
2021-07-05 14:42:25 140
原创 欧拉计划18: 最大路径和 I (Maximum path sum I)
题目描述结果#include<iostream>using namespace std;int num[20][20], dp[20][20];int main() { //第一种 从上往下 int res = 0; for (int i = 1; i < 16; ++i) for (int j = 1; j <= i; ++j) { cin >> num[i][j]; .
2021-07-05 13:44:15 130
原创 欧拉计划15: 网格路径 Lattice paths
题目描述结果#include<iostream>using namespace std;long long dp[25][25];int main() { for (int i = 1; i <= 21; ++i) for (int j = 1; j <=21; ++j) if (1 == i && 1 == j) dp[i][j] = 1; else dp[i][.
2021-07-05 13:43:34 134
原创 大整数乘法
#include<iostream>#include<cstring>using namespace std;char s1[1005], s2[1005];int n1[1005], n2[1005], ans[2005];int main() { cin >> s1 >> s2; n1[0] = strlen(s1); n2[0] = strlen(s2); for (int i = 1, j = n1[0...
2021-07-05 13:43:21 61
原创 欧拉计划25: 1000位斐波那契数 1000-digit Fibonacci number
题目描述结果#include<iostream>using namespace std;int func(int *n1, int *n2) { n2[0] = n1[0]; for (int i = 1; i <= n2[0]; ++i) { n2[i] += n1[i]; if (n2[i] > 9) { n2[i + 1] += n2[i] /10; n2[i.
2021-07-02 15:08:09 114
原创 大整数求和
结果#include<iostream>#include<cstring>using namespace std;int num1[1005], num2[1005], sum[1005];char s1[1005], s2[1005];int main() { cin >> s1 >> s2 //得到大整数的长度 num1[0] = strlen(s1); num2[0] = strlen(s2); .
2021-07-02 14:24:14 80
原创 欧拉计划11: 方阵中的最大乘积 Largest product in a grid
题目描述结果#include<iostream>using namespace std;int num[30][30], ans;int dirx[4] = {-1, 0, 1, 1};int diry[4] = {1, 1, 1, 0};int main() { for (int i = 5; i < 25; ++i) for (int j = 5; j < 25; ++j) cin >> .
2021-07-02 11:15:42 108
原创 欧拉计划8: 连续数字最大乘积 Largest product in a series
题目描述结果#include<iostream>using namespace std;char str[10005];int main() { cin >> str; long long ans = 1, zero = 0, now = 1; for (int i = 0; i < 1000; ++i) { if (i < 13) now *= str[i] - '0'; .
2021-07-02 11:13:23 75
原创 欧拉计划36: 双进制回文数 Double-base palindromes
题目描述结果#include<iostream>using namespace std;bool func(int x, int n) { int t = 0, raw = x; while (x) { t = t * n + x % n; x /= n; } return t == raw;}int main() { int ans = 0; for (int i = 1; i <.
2021-07-02 11:11:23 116
原创 欧拉计划6: 平方的和与和的平方之差 Sum square difference
题目描述结果#include<iostream>using namespace std;int main() { int sum = 0, psum = 0; for (int i = 1; i < 101; ++i) { sum += i; psum += i * i; } cout << sum * sum - psum << endl; return 0;}.
2021-07-02 11:09:38 150
原创 欧拉计划4: 最大回文乘积 Largest palindrome product
题目描述结果#include<iostream>using namespace std;bool func(int x) { int t = 0, raw = x; while (x) { t = t * 10 + x % 10; x /= 10; } return t == raw;}int main() { int ans = 0; for (int i = 100; i < .
2021-07-02 11:07:41 73
原创 欧拉计划2: 偶斐波那契数 Even Fibonacci numbers
题目描述结果#include<iostream>using namespace std;//int num[4000005] = {1, 2};int main() { /* long long ans = 2; for (int i = 2; 1; ++i) { num[i] = num[i - 1] + num[i - 2]; if (num[i] % 2 == 0) { ans += n.
2021-07-02 11:05:50 91
原创 欧拉计划1: 3或5的倍数 Multiples of 3 and 5
题目描述结果#include<iostream>using namespace std;int main() { /* int ans = 0; for (int i = 1; i < 1000; ++i) { if (i % 3 == 0 || i % 5 == 0) { ans += i; } } cout << ans << endl;*/.
2021-07-02 11:03:22 59
原创 欧拉计划14 最长考拉兹序列 Longest Collatz sequence
题目描述用 记忆数组+递归 时间复杂度约等于 递推#include<iostream>using namespace std;int num[10000005];int func(long long x) { if (1 == x) return 1; if (x < 10000000 && num[x]) return num[x]; int t = 0; if (x % 2 == 0) t = func(x / .
2021-07-02 10:59:05 182
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人