12 2024 档案
摘要:memset(res,0,sizeof(res)); 注意头文件#include <string.h>
阅读全文
摘要:题目描述 用高精度计算出 \(S = 1! + 2! + 3! + \cdots + n!\)(\(n \le 50\))。 其中 ! 表示阶乘,定义为 \(n!=n\times (n-1)\times (n-2)\times \cdots \times 1\)。例如,\(5! = 5 \times
阅读全文
摘要:题目描述 超市里有 \(n(1\le n\le10^5)\) 个寄包柜。每个寄包柜格子数量不一,第 \(i\) 个寄包柜有 \(a_i(1\le a_i\le10^5)\) 个格子,不过我们并不知道各个 \(a_i\) 的值。对于每个寄包柜,格子编号从 1 开始,一直到 \(a_i\)。现在有 \(
阅读全文
摘要:题目背景 高精度乘法模板题。 题目描述 给出两个非负整数,求它们的乘积。 输入格式 输入共两行,每行一个非负整数。 输出格式 输出一个非负整数表示乘积。 样例 #1 样例输入 #1 1 2 样例输出 #1 2 提示 每个非负整数不超过 \(10^{2000}\)。 我的作答 #include <st
阅读全文
摘要:题目描述 高精度加法,相当于 a+b problem,不用考虑负数。 输入格式 分两行输入。\(a,b \leq 10^{500}\)。 输出格式 输出只有一行,代表 \(a+b\) 的值。 样例 #1 样例输入 #1 1 1 样例输出 #1 2 样例 #2 样例输入 #2 1001 9099 样例
阅读全文
摘要:颠倒数字法 int isReverse(int n) { int reversed = 0, original = n; while (n > 0) { reversed = reversed * 10 + n % 10; n /= 10; } return original == reversed
阅读全文
摘要:题目描述 给出两个序列 pushed 和 poped 两个序列,其取值从 1 到 \(n(n\le100000)\)。已知入栈序列是 pushed,如果出栈序列有可能是 poped,则输出 Yes,否则输出 No。为了防止骗分,每个测试点有多组数据,不超过 \(5\) 组。 输入格式 第一行一个整数
阅读全文
摘要:题目 书店店员有一张链表形式的书单,每个节点代表一本书,节点中的值表示书的编号。为更方便整理书架,店员需要将书单倒过来排列,就可以从最后一本书开始整理,逐一将书放回到书架上。请倒序返回这个书单链表。 输入 head = [3,6,4,1] 输出 [1,4,6,3] 解法 1:递归 class Sol
阅读全文
摘要:一、引言 指针是 C 语言中的一个强大特性,它允许我们直接操作内存地址,从而高效灵活地处理数据,特别是在处理数组时,指针有着非常重要的应用。本教程将通过分析一段示例代码,详细讲解不同类型指针与数组结合使用的情况。 二、指向数组元素的指针 代码示例 int arr1[3] = {4, 5, 6}; i
阅读全文
摘要:#include <stdio.h> // 定义并初始化行星数组 char *planets[] = {"Mercury", "Venus", "Earth", "Mars", "Jupiter", "Saturn", "Uranus", "Neptune", "Pluto"}; int main(
阅读全文
摘要:#include <stdio.h> // 定义read_line函数,用于从标准输入读取一行字符到字符数组str中,最多读取n个字符 int read_line(char str[], int n) { char ch; int i = 0; while ((ch = getchar())!= '
阅读全文