怎么麻烦怎么来了???

提供几个案例:

5 0.00001 0.00001

0 0.0 0.0222

1 0.001 0.2000

2 005.06 0.230

1 00.020 0

贴份代码跑。。

#include <bits/stdc++.h>
using namespace std;
typedef long long LL;
int n,m;
string s1,s2;
string a,b;
int main()
{
int as,bs;
cin>>n>>s1>>s2;
as = s1.length();
bs = s2.length();
if(n==0)
{
puts("YES 0.*10^0");
return 0;
}
m = n; a = "0.";
b = "0.";
int num1_1 = 0,num1_2=0;
bool flag = false;
int i = 0;
while(s1[i]=='0')
{
i++;
n++;
}
bool flat = false;
for(;i < n && i < as;i++)
{
if(s1[i] >= '0'&& s1[i] <= '9')
{
if(flag)
{
if(!num1_1&&!flat&&s1[i]=='0')
{
n++;
num1_2++;
}
else
{
flat = true;
a.push_back(s1[i]);
}
}
else
{
a.push_back(s1[i]);
num1_1++;
}
}
else
{
flag = true;
n++;
}
}
if(!flat) num1_2 = 0;
else num1_2 = -num1_2; if(!flag)
{
while(i < as)
{
if(s1[i] >= '0' && s1[i] <= '9')
num1_1++;
else break;
i++;
}
}
//printf("%d %d\n",i,n);
while(i<n)
{
a.push_back('0');
i++;
} flag = false;
int num2_1 = 0,num2_2=0;
swap(n,m);
i = 0;
while(s2[i]=='0')
{
n++;
i++;
}
flat = false;
for(;i < n && i < bs;i++)
{
if(s2[i] >= '0' && s2[i] <= '9')
{
if(flag)
{
if(!num2_1&&!flat&&s2[i]=='0')
{
num2_2++;
n++;
}
else
{
flat = true;
b.push_back(s2[i]);
}
}
else
{
b.push_back(s2[i]);
num2_1++;
}
}
else
{
flag = true;
n++;
}
}
if(!flat) num2_2 = 0;
else num2_2 = - num2_2; if(!flag)
{
while(i < bs)
{
if(s2[i] >= '0' && s2[i] <= '9')
num2_1++;
else break;
i++;
}
} while(i < n)
{
b.push_back('0');
i++;
} if(a == b && ((num1_1 && num1_1 == num2_1)||(!num1_1 && num1_2 == num2_2)))
{
cout<<"YES "<<a;
if(num1_1)
cout<<"*10^"<<num1_1<<endl;
else
cout<<"*10^"<<num1_2<<endl;
}
else
{
cout<<"NO ";
cout<<a;
if(num1_1)
cout<<"*10^"<<num1_1;
else
cout<<"*10^"<<num1_2;
cout<<" ";
cout<<b;
if(num2_1)
cout<<"*10^"<<num2_1;
else
cout<<"*10^"<<num2_2;
} }

PAT1060【大模拟啊】的更多相关文章

  1. HDU 5920 Ugly Problem 高精度减法大模拟 ---2016CCPC长春区域现场赛

    题目链接 题意:给定一个很大的数,把他们分为数个回文数的和,分的个数不超过50个,输出个数并输出每个数,special judge. 题解:现场赛的时候很快想出来了思路,把这个数从中间分为两部分,当位 ...

  2. AC日记——神奇的幻方 洛谷 P2615(大模拟)

    题目描述 幻方是一种很神奇的N*N矩阵:它由数字1,2,3,……,N*N构成,且每行.每列及两条对角线上的数字之和都相同. 当N为奇数时,我们可以通过以下方法构建一个幻方: 首先将1写在第一行的中间. ...

  3. ACdream 1188 Read Phone Number (字符串大模拟)

    Read Phone Number Time Limit:1000MS     Memory Limit:64000KB     64bit IO Format:%lld & %llu Sub ...

  4. 2016ACM-ICPC网络赛北京赛区 1001 (trie树牌大模拟)

    [题目传送门] 1383 : The Book List 时间限制:1000ms 单点时限:1000ms 内存限制:256MB 描述 The history of Peking University ...

  5. Bzoj1972: [Sdoi2010]猪国杀 题解(大模拟+耐心+细心)

    猪国杀 - 可读版本 https://mubu.com/doc/2707815814591da4 题目可真长,读题都要一个小时. 这道题很多人都说不可做,耗时间,代码量大,于是,本着不做死就不会死的精 ...

  6. (大模拟紫题) Luogu P1953 易语言

    原题链接:P1953 易语言 (我最近怎么总在做大模拟大搜索题) 分别处理两种情况. 如果只有一个1或0 直接设一个cnt为这个值,每次输入一个新名字之后把数字替换成cnt,最后cnt++即可. 注意 ...

  7. NOIP2017 时间复杂度 大模拟

    再写一道大模拟题. 由于是限时写的,相当于考场代码,乱的一批. 题目链接:P3952 时间复杂度 先记几个教训: 字符串形式的数字比较大小老老实实写函数,字典序都搞错几次了 栈空的时候不但pop()会 ...

  8. [CSP-S模拟测试]:引子(大模拟)

    题目描述 网上冲浪时,$Slavko$被冲到了水箱里,水箱由上而下竖直平面.示意图如下: 数字$i$所在的矩形代表一个编号为$i$的水箱.1号水箱为水箱中枢,有水管连出.除了$1$号水箱外,其他水箱上 ...

  9. 模拟赛38 B. T形覆盖 大模拟

    题目描述 如果玩过俄罗斯方块,应该见过如下图形: 我们称它为一个 \(T\) 形四格拼板 .其中心被标记为\(×\). 小苗画了一个 \(m\) 行 \(n\) 列的长方形网格.行从 \(0\) 至 ...

  10. Codeforces 730L - Expression Queries(大模拟)

    Codeforces 题面传送门 & 洛谷题面传送门 大模拟(?)+阿巴细节题,模拟赛时刚了 3h 最后因为某个细节写挂 100->40/ll/ll(下次一定不能再挂分了啊 awa) 首 ...

随机推荐

  1. cocos2d-x在android真机上设置帧率无效的问题

    通过setAnimationInterval设置帧频时,发现在android下没有效果的 在Cocos2dxRenderer .java文件里面找到了onDrawFrame这个函数.里面有句注释 : ...

  2. java中properties

    一.Java Properties类 Java中有个比较重要的类Properties(Java.util.Properties),主要用于读取Java的配置文件,各种语言都有自己所支持的配置文件,配置 ...

  3. 分享知识-快乐自己:Linux下安装 erlang 及 RabbitmMQ

    Linux下安装 erlang 及 RabbitmMQ: 下载地址一  下载地址二 下载地址三 安装依赖: yum install ncurses-devel 安装 erlang: 1):下载Erla ...

  4. hdu 1503 Advanced Fruits(最长公共子序列)

    Advanced Fruits Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 65536/32768 K (Java/Others)T ...

  5. 列存储压缩技巧,除公共除数或者同时减去最小数,字符串压缩的话,直接去重后用数字ID压缩

    Column-store compression At a high level, doc values are essentially a serialized column-store. As w ...

  6. [深入学习C#]C#实现多线程的方法:线程(Thread类)和线程池(ThreadPool)

    简介 使用线程的主要原因:应用程序中一些操作需要消耗一定的时间,比如对文件.数据库.网络的访问等等,而我们不希望用户一直等待到操作结束,而是在此同时可以进行一些其他的操作.  这就可以使用线程来实现. ...

  7. 关于CString与VARIANT(CComVariant)之间的转化

    一.VARIANT.CComVariant类与CString是什么: CString是MFC定义的字符串类,VARIANT是COM标准为了使COM组件能够被各种语言使用(vc++.vb.java.py ...

  8. Windows 下GitHub 安装和使用

    一.官网注册和设置 1.登录官网,注册账号,其中用户名以后会用到. 2.创建仓库.使用公开仓库方式创建,公开仓库免费.(右上角->加号->new repository) 第一行:仓库名字. ...

  9. 关于对H264码流的TS的封装的相关代码实现

    1 写在开始之前 在前段时间有分享一个H264封装ps流到相关文章的,这次和大家分享下将H264封装成TS流到相关实现,其实也是工作工作需要.依照上篇一样,分段说明每个数据头的封装情况,当然,一样也会 ...

  10. Agc011_F Train Service Planning

    先放题面,再放LHX巨佬题解 接着就是%%%.$orz.Oro.Or2.Otz.OTL.sto.rzo.Jto$.On_.○| ̄|_啊 模拟赛里直接把这道题刚掉了 一题升天·爆踩全场 这题思维跨越度已 ...