c蓝桥杯P1001精确运算

【题解-洛谷】P8772 [蓝桥杯 2022 省 A] 求和 请使用合适的数据类型进行运算。蓝桥杯 2022 省赛 A 组 C 题。, 求它们两两相乘再相加的和,即。输入的第一行包含一个整数。 阅读详情
当两个比较大的整数相乘时,可能会出现数据溢出的情形。为避免溢出,可以采用字符串的方法来实现两个大数之间的乘法。具体来说,首先以字符串的形式输入两个整数,每个整数的长度不会超过8位,然后把它们相乘的结果存储在另一个字符串当中(长度不会超过16位),最后把这个字符串打印出来。例如,假设用户输入为:62773417和12345678,则输出结果为:774980393241726.

输入:
  62773417 12345678

输出:

  774980393241726

本题思路就是模拟手算过程。

#include<stdio.h>   /*try_fei_ge*/
#include<math.h>
#include<string.h>
void up(char c[],int cur);     /*进位*/
int main()
{
	int i,j,k,l,j_wei,j_cur,i_wei,number;
	char ch='+',a[16],b[16],c[100000];
	memset(c,0,sizeof(c));
	scanf("%s %s",a,b);
	i=strlen(a)-1;
	j=strlen(b)-1;
	if(a[0]=='-')   /*判断数a是否为负数若是记录下负号并且将其余元素前移*/
	{
		ch='-';
		for(k=0;k<=i;k++)
			a[k]=a[k+1];
	}
	if(b[0]=='-')
	{
		if(ch=='-')	ch='+';
		else ch='-';
		for(k=0;k<=j;k++)
			b[k]=b[k+1];
	}
	for(k=0;k<=i;k++)     /*将字符一转化为ascll码表示,避免计算时超过127*/
		a[k]=a[k]-'0';
	for(l=0;l<=j;l++)
		b[l]=b[l]-'0';
	for(i_wei=0;i>=0;i--,i_wei++)   /*从数a最低位开始运算*/
	{
		for(j_wei=0,j_cur=j;j_cur>=0;j_cur--,j_wei++)  /*使数b每一位与数a相乘并将结果相加*/
		{
			number=a[i]*b[j_cur];        /*将两数相乘结果暂时放置一位中*/
			c[i_wei+j_wei]=c[i_wei+j_wei]+number;/*注意此处下标与当前数是十的几倍有关!*/
			up(c,i_wei+j_wei);   /*判断该位是否大于10需要进位*/
		}
	}
	for(i=99999;c[i]==0&&i>=0;i--) ;/*运算时逆序保存,找到最高位*/
	if(ch=='-')	printf("-"); /*如果为负数输出负号*/
	if(i==-1)	putchar('0');  /*如果遍历到数组0处任未找到数则为0*/
	else for(;i>=0;i--)   /*输出数*/
			printf("%c",c[i]+'0');/*开始时ascll码缩小至0~9,现在扩大回去*/
	return 0;
} 
void up(char c[],int cur)
{
	int ch;
	if((ch=c[cur])>=10)/*当前位小于0不在进位*/
	{
		c[cur]=(ch%10);
		c[cur+1]=c[cur+1]+(ch/10);
		up(c,cur+1);    /*递归判断当前进位后下一位是否需要进位*/
	}
}

version 2.0

#include<stdio.h>  /*try_fei_ge*/
#include<string.h>
void carry(char c[],int cur);
int main(
{
	int la,lb;
	int start = 399,offest = 0;
	char a[200],b[200],c[400];
	memset(a,0,sizeof(a));
	memset(b,0,sizeof(b));
	memset(c,0,sizeof(c));
	scanf("%s",a);
	scanf("%s",b);
	la = strlen(a);
	lb = strlen(b);
	--la;--lb;
	if(la == 0 && a[la] == '0')	{printf("0");return 0;}
	if(lb == 0 && b[lb] == '0')	{printf("0");return 0;}
	for(int cur_a = la;cur_a >= 0;cur_a--)
		for(int cur_b = lb;cur_b >= 0;cur_b--)
		{
			 int cur = start - (lb - cur_b) - (la - cur_a);
			 c[cur] += (b[cur_b] - '0') * (a[cur_a] - '0');
			 carry(c,cur);
		}
	int i = 0;
	for(;i <= start;i++)
		if(c[i] != 0)
			break;
	for(;i <= start;i++)
		printf("%d",c[i]);
	return 0;
 } 
void carry(char c[],int cur)
{
	if(c[cur] >= 10)
	{
		c[cur-1] += c[cur] / 10;
		c[cur] = c[cur] % 10;
		carry(c,cur-1);
	}
}


中文实体关系抽取数据集大盘点:从百度Duie2.0到医疗CBLUE,哪个更适合你的NLP项目? 本文全面分析了中文实体关系抽取领域的主流数据集,包括百度DuIE 2.0、医疗CBLUE等,帮助开发者根据项目需求选择最适合的数据集。文章详细对比了各数据集的特点、适用场景及优化策略,为自然语言处理项目提供实用指南。 阅读详情

相关推荐

EPLAN Electric P8 2025安装避坑指南:硬件、.NET 6与VM配置全解析

EPLAN Electric P8 是面向工业自动化电气设计的工程级CAD平台,其核心依赖于.NET运行时、DirectX硬件加速与本地许可证验证机制。随着2025版升级至.NET 6.0 Runtime、DirectX 12渲染引擎及双模授权校验,安装失败率显著上升——尤其在显卡驱动陈旧、虚拟机环境或企业离线场景下。技术价值在于保障PLC柜体布局、端子排自动生成、电缆清册输出等产线级功能稳定运行;典型应用场景包括高校电赛控制系统设计、包装线电控图纸交付及集成商多版本协同部署。本文聚焦EPLAN 2025安

weixin_30897079的博客 558

蓝桥杯_P1001

当两个比较大的整数相乘时,可能会出现数据溢出的情形。为避免溢出,可以采用字符串的方法来实现两个大数之间的乘法。具体来说,首先以字符串的形式输入两个整数,每个整数的长度不会超过8位,然后把它们相乘的结果存储在另一个字符串当中(长度不会超过16位),最后把这个字符串打印出来。例如,假设用户输入为:62773417和12345678,则输出结果为:774980393241726.输入:   627734...

jing2xin1bi5xin的博客 350

解忧杂货铺(四):Hightec生成HEX方法+小功能开启

Hightec使用的一些常用技能

梦想技术家 2161

蓝桥杯 ADV-197 算法提高 P1001

当两个比较大的整数相乘时,可能会出现数据溢出的情形。为避免溢出,可以采用字符串的方法来实现两个大数之间的乘法。 具体来说,首先以字符串的形式输入两个整数,每个整数的长度不会超过8位,然后把它们相乘的结果存储在另一个字符串当中 (长度不会超过16位),最后把这个字符串打印出来。例如,假设用户输入为:62773417和12345678, 则输出结果为:774980393241726. 输入:

柳婼 の blog 832

ONNC Open Neural Network Compiler 开源神经网络编译器 一个 开源、模块化、可重用编译器算法和工具链的库,专门针对深度学习加速器(DLA)部署导入ONNX模型

ONNC是一个集合了开源、模块化、可重用编译器算法和工具链的库,专门针对深度学习加速器(DLA)。ONNC从底层开始构建,旨在将ONNX中间表示(IR)翻译成专有DLA代码。其软件架构设计强调可移植性和可重用性,从而简化了开发新后端的工作。上图展示了ONNC软件栈的顶层框图。软件栈从导入ONNX计算图模型到输出相应的硬件二进制文件,展示了各个功能块。

万有文的博客 1996

JSSIP实战:5分钟搞定WebRTC电话功能(附完整代码示例)

本文通过JSSIP库实战演示如何在Web应用中快速集成WebRTC电话功能。文章提供了从环境准备、SIP服务器连接到完整代码示例的详细步骤,涵盖用户注册、拨号接听、媒体流处理等核心环节,并针对常见问题给出排查方案,帮助开发者高效实现网页端实时语音通信。

u8v9w0x1y的博客 518

2016蓝桥杯算法提高——P1001(大数乘法)

算法提高   P1001(大数乘法) 当两个比较大的整数相乘时,可能会出现数据溢出的情形。为避免溢出,可以采用字符串的方法来实现两个大数之间的乘法。具体来说,首先以字符串的形式输入两个整数,每个整数的长度不会超过8位,然后把它们相乘的结果存储在另一个字符串当中(长度不会超过16位),最后把这个字符串打印出来。例如,假设用户输入为:62773417和12345678,则输出结果为:77498039

独一无二的我的专栏 1818

时空图神经网络实战:T-GCN在交通流量预测中的深度解析

本文深度解析了时空图神经网络T-GCN在交通流量预测中的实战应用。通过结合图卷积网络(GCN)和门控循环单元(GRU),T-GCN有效捕捉交通数据的时空依赖性,相比传统方法降低30%以上预测误差。文章详细介绍了T-GCN的核心技术、工程实践和优化策略,为智能交通系统提供有力工具。

weixin_29038537的博客 268

蓝桥杯 算法提高 P1001

问题描述 当两个比较大的整数相乘时,可能会出现数据溢出的情形。为避免溢出,可以采用字符串的方法来实现两个大数之间的乘法。具体来说,首先以字符串的形式输入两个整数,每个整数的长度不会超过8位,然后把它们相乘的结果存储在另一个字符串当中(长度不会超过16位),最后把这个字符串打印出来。例如,假设用户输入为:62773417和12345678,则输出结果为:774980393241726. 输入格式 62773417 12345678 输出格式 774980393241726 解题思路 1.数据接收:先用字符数组

优快云_SmallAnnum的博客 258

终端里藏了个AI大神!DeepSeek‑TUI让你的命令行直接起飞

DeepSeek-TUI:终端AI编程神器 DeepSeek-TUI是一款专为开发者设计的终端AI编程工具,基于DeepSeek V4模型,提供100万Token超大上下文支持,适合处理复杂项目。其核心优势包括: 轻量高效:单二进制文件,无需依赖环境,支持SSH远程操作 智能交互:实时流式输出推理过程,支持三档模式(Plan/Agent/YOLO)灵活切换 强大功能:集成文件读写、Git管理、Shell执行等工具,支持一键回滚和持久会话 节省成本:智能压缩与缓存优化,显著降低Token消耗 适用于服务器开发

965

Codex 团队如何用自己的产品构建产品——整个 Spec 只有 10 个要点

OpenAI Codex团队采用极简产品开发模式,整个产品规格仅10个要点。团队50-100人长期仅1名PM,设计师代码量已超过工程师。产品负责人Alexander Embiricos透露,团队几乎不写详细文档,仅在需要协调时写简短要点。OpenAI采用独特规划哲学:只做8周内短期或长期方向性规划,拒绝中期路线图。2025年GPT-5.2 Codex发布后,模型能力突破催生了桌面应用开发。团队强调"让离代码最近的人做决策",PM角色转变为"填空者",设计师与工程师界限

348

蓝桥杯练习题P1001(大数乘法)

去年写过这个程序,可是只能得到83分,不知道有木有朋友也碰到相同的情况,其实就是一个小细节#include <iostream> #include <cstring> using namespace std;int main() { char *s1 = new char[8]; char *s2 = new char[8]; cin >> s1 >> s2; cha

帅东's Blog 1118

【ComfyUI】Wan2.2 + IndexTTS 图像数字人或动物口播视频生成

本文介绍了一个基于ComfyUI的数字人口播视频生成工作流,整合了IndexTTS和图像处理技术。该系统通过多模型协同工作,实现从形象图、文本和音频输入到自动生成口播视频的全流程。核心包含WanVideo系列模型,通过CLIP Vision、T5文本编码器和Wav2Vec语音模型分别处理视觉特征、语义理解和口型同步。工作流涵盖素材加载、特征提取、音频处理和视频生成等节点,支持人物、动物等多种主体的口播内容创作。该方案自动化程度高,适用于知识讲解、剧情旁白等多种场景,能帮助创作者高效产出高质量口播视频。

Mr数据杨 2056

【蓝桥杯】蓝桥杯试题 算法提高 P1001 && 算法训练 P0805 && 以及一些大数类API的简单用法

蓝桥杯试题 算法提高 P1001 && 算法训练 P0805 && 以及一些大数类的简单做法,超简单,学不会你砍我

qq_54452174的博客 593

SAP B1中文培訓教材_SDK

公司内部培训资料,对开发工具 ,DIAPI, UIAPI,Add-ON有详细解说

visio安装包

Microsoft Office Visio 是一款专业的制图软件。利用经过更新的形状、协作工具和数据链接图表,创建专业级图表以简化复杂的信息。

学习笔记——蓝桥杯单片机基础------P2=(P2 & 0x1f) | 0x80...

运算符基础

Born_toward的博客 8199

文档:亲测可用解决vnc灰屏,黑屏,鼠标大黑叉情况

主要解决vnc-viewer灰屏,黑屏,鼠标大黑叉等现象,详细见文档。

蓝桥杯 P1001(大数乘法)

算法提高 P1001   时间限制:1.0s   内存限制:256.0MB           当两个比较大的整数相乘时,可能会出现数据溢出的情形。为避免溢出,可以采用字符串的方法来实现两个大数之间的乘法。具体来说,首先以字符串的形式输入两个整数,每个整数的长度不会超过8位,然后把它们相乘的结果存储在另一个字符串当中(长度不会超过16位),最后把这个字符串打印出来。例

2023

汉书HE8,好用的汇编代码编写工具

汉书HE8,好用的汇编代码编写工具早期编写汇编代码所用功能强大

P8772 [蓝桥杯 2022 省 A] 求和 Python

P8772 [蓝桥杯 2022 省 A] 求和 Python

weixin_43843099的博客 1001

蓝桥杯 —— P1001 —— 大数相乘

83分.. #include #include #include #include #include #include #include #include #include #include #include #include #define INF 0x3f3f3f3f #define mem(a,b) memset(a,b,sizeof(a)) #define

sxtopc的博客 518

P8772 [蓝桥杯 2022 省 A] 求和

/mul:和的平方//sum:平方的和cin>>n;i<=n;sum+=(x*x);mul+=x;return 0;

wrs__lele的博客 1622

第十四届蓝桥杯集训——练习解题阶段(无序阶段)-ALGO-1001 跳马

第十四届蓝桥杯集训——练习解题阶段(无序阶段)-ALGO-1001 跳马 前言 关于数学的疑问 算法训练 跳马 C语言 C++语言 Java语言 Python语言 总结 第六届——第十三届省赛题解 第六届——第十二届国赛题解

红目香薰 430

【洛谷】P8772 [蓝桥杯 2022 省 A] 求和 题解

给定n个整数a1​a2​⋯an​, 求它们两两相乘再相加的和,即Sa1​⋅a2​a1​⋅a3​⋯a1​⋅an​a2​⋅a3​⋯an−2​⋅an−1​an−2​⋅an​an−1​⋅an​。

lcx_defender的博客 2145

蓝桥杯国赛06——第十届国赛客观题

第十届 蓝桥杯 单片机设计与开发项目 决赛 解析:答案:BC A:第三位置0 B:P2全部取反, 当然第三位也取反 C:异或:原来低三位是1,相同,取反。原来低三位是0,不同,置1. D:低三位置1 解析:谐振状态电路整体显阻性,当加入低频信号时候,容性增加,感性减小,因此整个电路呈现容性。 解析:基本数电知识 解析:等效电动势就等于开路时的电压。 当接入电阻后,I = 1A ,R = 14 解析: 查数据手册很容易找到 解析: 都是基本的数电知识,很简单 解析:RS232不是差分信

amimax的博客 2650

“蓝桥杯”练习系统试题集,题解答案(C/C++)

基础练习 BASIC-1 闰年判断 #include&amp;amp;amp;amp;amp;amp;amp;amp;amp;amp;amp;amp;lt;bits/stdc++.h&amp;amp;amp;amp;amp;amp;amp;amp;amp;amp;amp;amp;gt; using namespace std; bool f(int x){ if(x%4==0&amp;amp;amp;amp;amp;amp;amp;amp;amp;amp;amp;a

薛崇祥的博客 7570

DAY 11 蓝桥杯 P1001 大数相乘

今天是元宵节欸 先写个庆祝元宵节的代码纪念一下!!! #include<iostream> using namespace std; int main() { cout<<"OW祝大家元宵节快乐!"<<endl; return 0; } 好,回归正题! 算法提高 P1001 资源限制 时间限制:1.0s 内存限制:256.0MB      当两个比较...

OWCYKH的博客 302

P8772 [蓝桥杯 2022 省 A] 求和 ——Java解答

P8772 [蓝桥杯 2022 省 A] 求和 Java版

Elysia4rjxl的博客 985

【洛谷 P8772】[蓝桥杯 2022 省 A] 求和 题解(前缀和)

给定n个整数a1​a2​⋯an​, 求它们两两相乘再相加的和,即Sa1​⋅a2​a1​⋅a3​⋯a1​⋅an​a2​⋅a3​⋯an−2​⋅an−1​an−2​⋅an​an−1​⋅an​。

HEX9CF的技术博客 1035
上一篇: c蓝桥杯分糖果
下一篇: 有向无环图中最长路(无权有向无环无回路图)动态规划初步!
try_fei_ge
博客等级 码龄10年 31粉丝 35原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值