【2020.10.14普及组】SSL模拟赛题解

目录:

T1:小X的加法难题
T2:小X的密码破译
T3:小X的液体混合
T4:小X的AK计划

T1:小X的加法难题

I n p u t Input Input f i l e : s u m . i n file: sum.in file:sum.in
O u t p u t Output Output f i l e : s u m . o u t file: sum.out file:sum.out
T i m e Time Time l i m i t : limit: limit: 1 1 1 s e c o n d second second
M e m o r y Memory Memory l i m i t : limit: limit: 256 256 256 M B MB MB
第一节编程课上,老师要求大家写一个程序计算两个正整数的和。
看到小 X 不屑的眼神后,老师决定给小 X 增加难度。以求 12 和 3 的和为例,老师在 12 + 3 这个原始式子里加入一些无用的空格,再把它交给小 X。
这下小 X 傻眼了,希望你帮帮他。

Input

第一行包含一个字符串,表示老师给小 X 的式子。

Output

若式子的结果不超过 108,则第一行包含一个整数,表示式子的结果;否则第一行包含一个字符串
“Large”。

Example

1 2 + 3
15

23456789+98765432 
Large

分析:

一个字符串处理
一位位把一个个字符塞进去 以" + + +"为分界
转换成数字 判溢出

CODE:

#include<iostream>
#include<cstdio>
#include<cstring>
#include<algorithm>
#define p 1e8
using namespace std;
long long sum,a,b;
bool f;
char x;
int main()
{
   
	freopen("sum.in","r",stdin);
	freopen("sum.out","w",stdout);
	while(cin>>x)  //一位字符
	{
   
		if(x=='+'){
   f=1;continue;} 
		if(!f) a=a*10+(x-48);  //第一个数
		if(f) b=b*10+(x-48);  //第二个数
	}
	//cout<<a<<" "<<b<<endl;
	sum=a+b;
	if(sum>p) printf("Large");   //溢出
	else printf
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值