5820. 【NOIP提高A组模拟2018.8.16】 非法输入
(File IO): input:aplusb.in output:aplusb.out

Time Limits: 1000 ms  Memory Limits: 262144 KB  Detailed Limits 

Goto ProblemSet

Description

在算法竞赛中,题目一般保证了输入数据的合法性。然而在工程开发中,我们往往不期望程 序得到的输入都是合法的。
D 君正忙着向校内 OJ 添加题目,在写了第 233 个 val.cpp 之后,她的头脑中涌现出了这样 的想法。于是她决定出一道不需要写 val.cpp 的题。
输入两个整数,你需要做的就是输出她们的和。

Input

第一行一个正整数 T。
接下来 T 行,每行代表一组数据。
一组合法的数据包含由一个空格隔开的两个合法的十进制整数,行首和行尾不包含任何多余 的字符。
一个合法的十进制整数要么是 0,要么由一个可选的负号,一个 1 到 9 之间的数字,和若干 个 0 到 9 之间的数字顺序连接而成,并且这两个数字均在区间 [−2^31 , 2^31) 之内。
一组不合法的数据是一个不匹配以上规则的字符串。

Output

对于每组数据,如果该数据是合法的请输出一行一个整数代表答案,否则请输出 Input Error。

Sample Input

6
1 1
-1 -1
1        1
asdf 2147483648 0

Sample Output

2
-2
Input Error
Input Error
Input Error
Input Error

Data Constraint

aaarticlea/jpeg;base64,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" alt=" " />

思路:

直接模拟就好

错误有很多种,下面加以列举

1.非法字符

2.非法数字(01,-0,898-之类)

3.空格偏多(少)(    2323  23)

4.数字过大(小)

代码:

#include<iostream>
#include<cstdio>
#define rii register int i
#define int long long
#define maxn 2147483647
#define minx -2147483647
using namespace std;
int t;
long long check(long long num)
{
if(num>maxn)
{
return ;
}
num++;
if(num<minx)
{
return ;
}
return ;
}
void pd(int kg,int l,int r,int wa,int wz)
{
if(wz<)
{
puts("Input Error");
return;
}
if(wa!=)
{
puts("Input Error");
return;
}
if(kg>)
{
puts("Input Error");
return;
}
l+=r;
printf("%lld\n",l);
}
signed main()
{
freopen("aplusb.in","r",stdin);
freopen("aplusb.out","w",stdout);
scanf("%lld",&t);
getchar();
for(rii=;i<=t;i++)
{
int kg=,num[]={,,},wz=,wa=,cnt=;
char pre=;
while()
{
char c;
scanf("%c",&c);
cnt++;
if(cnt==&&c!='-')
{
if(c<''||c>'')
{
wa++;
}
}
if(c==)
{
pd(kg,num[],num[],wa,wz);
break;
}
if(wa!=)
{
continue;
}
if(check(num[])!=||check(num[])!=)
{
// puts("Input Error");
wa++;
// break;
}
if(c==' ')
{
kg++;
pre=c;
continue;
}
if(c=='-')
{
if(pre!=' '&&pre!=)
{
wa++;
}
pre=c;
continue;
}
if(c<''||c>'')
{
wa++;
pre=c;
continue;
}
if(c>=''&&c<='')
{
// if(pre=='0'&&)
// {
// wa++;
// }
if(pre>=''&&pre<='')
{
num[wz]*=;
if(num[wz]==&&pre=='')
{
wa++;
}
if(num[wz]>maxn||(num[wz]-)<minx)
{
continue;
}
if(num[wz]>)
{
num[wz]+=c-'';
}
else
{
num[wz]-=c-'';
}
}
else
{
wz++;
num[wz]=c-'';
if(wz>)
{
wa++;
}
else
{
if(pre=='-')
{
if(num[wz]==)
{
wa++;
}
num[wz]*=-;
}
}
}
pre=c;
}
}
}
}

5820. 【NOIP提高A组模拟2018.8.16】 非法输入(模拟,字符串)的更多相关文章

  1. JZOJ 5818. 【NOIP提高A组模拟2018.8.15】 做运动

    5818. [NOIP提高A组模拟2018.8.15] 做运动 (File IO): input:running.in output:running.out Time Limits: 2000 ms  ...

  2. JZOJ 5812. 【NOIP提高A组模拟2018.8.14】 区间

    5812. [NOIP提高A组模拟2018.8.14] 区间 (File IO): input:range.in output:range.out Time Limits: 1000 ms  Memo ...

  3. 2021.04.24【NOIP提高B组】模拟 总结

    2021.04.24[NOIP提高B组]模拟 总结 T1 题意:有一圈数.两两之间有加法或乘法操作, 问你开始断掉那条边使得剩下的序列经过某种操作后的值最大 看上去是个区间 dp .然后直接断环成列, ...

  4. [JZOJ5817] 【NOIP提高A组模拟2018.8.15】 抄代码

    Description J 君是机房的红太阳,每次模拟她总是 AK 虐场.然而在 NOIP2117 中,居然出现了另一位 AK 的选手 C 君! 这引起了组委会的怀疑,组委会认为 C 君有抄袭 J 君 ...

  5. [JZOJ5818] 【NOIP提高A组模拟2018.8.15】 做运动

    Description 一天,Y 君在测量体重的时候惊讶的发现,由于常年坐在电脑前认真学习,她的体重有了突 飞猛进的增长. 幸好 Y 君现在退役了,她有大量的时间来做运动,她决定每天从教学楼跑到食堂来 ...

  6. 【NOIP提高A组模拟2018.8.14】 区间

    区间加:差分数组修改 O(n)扫描,负数位置单调不减 #include<iostream> #include<cstring> #include<cstdio> # ...

  7. [jzoj 5782]【NOIP提高A组模拟2018.8.8】 城市猎人 (并查集按秩合并+复杂度分析)

    传送门 Description 有n个城市,标号为1到n,修建道路花费m天,第i天时,若gcd(a,b)=m-i+1,则标号为a的城市和标号为b的城市会建好一条直接相连的道路,有多次询问,每次询问某两 ...

  8. [jzoj 5781]【NOIP提高A组模拟2018.8.8】秘密通道 (最短路)

    传送门 Description 有一副nm的地图,有nm块地,每块是下列四种中的一种: 墙:用#表示,墙有4个面,分别是前面,后面,左面,右面. 起点:用C表示,为主角的起点,是一片空地. 终点:用F ...

  9. [jzoj 5778]【NOIP提高A组模拟2018.8.8】没有硝烟的战争 (博弈论+dp)

    传送门 Description 被污染的灰灰草原上有羊和狼.有N只动物围成一圈,每只动物是羊或狼. 该游戏从其中的一只动物开始,报出[1,K]区间的整数,若上一只动物报出的数是x,下一只动物可以报[x ...

随机推荐

  1. SGI STL红黑树中迭代器的边界值分析

    前言 一段程序最容易出错的就是在判断或者是情况分类的边界地方,所以,应该对于许多判断或者是情况分类的边界要格外的注意.下面,就分析下STL中红黑树的迭代器的各种边界情况.(注意:分析中STL使用的版本 ...

  2. 关于Android那些事

    1.开发Activity步骤 第一步:写一个类继承Activity 第二步:重写oncreate方法 第三步:在主配置文件中注册activity <activity android:name=& ...

  3. SSH免密钥互信及企业案例

    SSH远程免密码:  原理简述:客户端 创建公钥和私钥,公钥是锁,私钥是自己留在客户端的钥匙. 客户端将公钥(锁)发出到服务端,以后自己就能用客户端本地的私钥进行登陆,不用输入密码! 1.客户端,和服 ...

  4. pl/sql中的一种链接数据库方式

    今天看开发人员如此连接数据库:

  5. May 28th 2017 Week 22nd Sunday

    Behind every beautiful thing, there's some kind of pain. 美丽背后,必有某种努力. No pains, no gains. Maybe we n ...

  6. 让ADO.NET Entity Framework 支持ACCESS数据库

    如写的不好请见谅,本人水平有限. 个人简历及水平:. http://www.cnblogs.com/hackdragon/p/3662599.html 接到一个程序和网页交互的项目,用ADO.NET ...

  7. 动态规划(DP),Human Gene Functions

    题目链接:http://acm.zju.edu.cn/onlinejudge/showProblem.do?problemCode=1027 http://poj.org/problem?id=108 ...

  8. python nmap模块使用进行主机探测(ICMP)

    终于审核通过了......第一次用博客,想记录自己的学习情况,分享知识. 废话不多说,第一篇blog,大牛请轻喷. 资产清点首先需要进行主机探测,将存活主机统计下来再进行进一步的指纹识别及端口探测.若 ...

  9. linux shell——zsh的安装与使用

    Shell是在程序员与服务器间建立一个桥梁,它对外提供一系列命令,让我们得以控制服务器.常用的Bash就是Shell的一种,也是Linux下默认Shell程序.这里介绍一种更强大的.更人性化的Shel ...

  10. Linux云主机 监控方案浅析

    1.为何需要监控 监控是运维工程师的眼睛,它可帮助运维工程师第一时间发现系统的问题. 对于服务器的整个生命周期,都要和监控打交道: 当有服务器上架,都需要加入比如CPU负载.内存.网络.磁盘等基础监控 ...