1073 Scientific Notation (20 point(s))

Picture of ssh key 立即下载

1073 Scientific Notation (20 point(s))

Scientific notation is the way that scientists easily handle very large numbers or very small numbers. The notation matches the regular expression [+-][1-9].[0-9]+E[+-][0-9]+ which means that the integer portion has exactly one digit, there is at least one digit in the fractional portion, and the number and its exponent's signs are always provided even when they are positive.

Now given a real number A in scientific notation, you are supposed to print A in the conventional notation while keeping all the significant figures.

Input Specification:

Each input contains one test case. For each case, there is one line containing the real number A in scientific notation. The number is no more than 9999 bytes in length and the exponent's absolute value is no more than 9999.

Output Specification:

For each test case, print in one line the input number A in the conventional notation, with all the significant figures kept, including trailing zeros.

Sample Input 1:

+1.23400E-03

Sample Output 1:

0.00123400

Sample Input 2:

-1.2E+10

Sample Output 2:

-12000000000

找规律、STL字符串处理。

读题关键字:1.数组长度最长9999位(必须字符串处理);2.即使是正数也要给出"+";3.根据样例,指数部分可以有前导0。

思路:1.提取小数部分和指数部分;2.根据指数大于/小于零来分情况处理,其中大于0的话又分成三种情况。

STL string类总结:

1. 初始化和读入

string s;//默认是空串
string s2(s1);//s2初始化为s1的副本
string s(N,'c');//s初始化为N个'c'
string s;cin>>s;//读取字符串,遇到空格的时候结束
string s;getline(cin,s);//读取字符串,空格可读入,直到回车结束
string s;getline(cin,s,'a'); //读取字符串,直到'a'结束,其中任何字符包括回车都能够读入

2. 基本操作

string s="abc";
bool isEmpty = s.empty();    //判断是否为空
int length = s.size();    //字符串长度
int length = s.length();    //同上

3 .添加(append)

string s1="abc";
string s2="123";
s1.append(s2);//在s1的后面添加s2,s1=="abc123"
s1="def";
int pos = 1;
s1.append(s2,pos,s2.length()-pos);//添加s2的pos下标开始剩下的字符,s1=="def23"
s2.append(5,'.');//在s2的后面添加5个".",s2=="123....."

4. 插入(insert)

string s="heo";int pos =2 ,n=2;
s.insert(pos,n,'l');//在字符串s的pos位置插入n个'l' s=="hello" 

s = "ello"; pos = 0;
string s1 = s.insert(pos,"h");//在s的pos位置插入'h' s1=="hello" 

string a = "aa~";pos=0;
string s2 = s1.insert(pos,a);//在s的pos位置插入字符串a s2=="aa~hello" 

5. 翻转、子串

string s="abcd";
reverse(s.begin(),s.end());//翻转字符串,并返回,s=="dcba"
int pos = 1,n=2;
string s1 = s.substr(pos);//s的子串,从pos开始(包括0)到末尾的所有字符的子串,并返回。s1=="cba"
string s2 = s.substr(pos,n);//s的子串,从pos开始(包括0)的n个字符的子串,并返回。s2=="cb"

6. 删除(erase)

string s = "hhhhel~~~looo";
int pos = 11; 
s.erase(pos);//删除s的pos位置的字符,直到结尾 s=="hhhhel~~~lo"
	
pos = 0;int n=3;
s.erase(pos,n); //删除s的pos位置开始的n个字符 s=="hel~~~lo" 
	
string::iterator it;
s.erase(s.begin()+3,s.begin()+6);//删除从first到last中间的字符(first和last都是string类型的迭代器) s=="hello"

7. 替换(replace)

8. 查找(find)

string s="abcdcba";
int pos1 = s.find('b');//查找s中第一次出现b的位置,并返回。pos1==1
int pos2 = s.rfind('b');//查找s中最后一次出现b的位置,并返回。pos2==5
int pos3 = s.find("cd");//使用于字符和字符串 。pos3==2

未完待续... 

#include<iostream>
#include<string>
using namespace std;
int string2int(string s) {//把[+-]003一类的字符串转成数字 
	bool isNeg = false;
	if (s[0] == '-') isNeg = true;
	s.erase(s.begin());
	int ans = 0;
	for (int i = 0; i<s.length(); i++) {
		ans = ans * 10 + s[i] - '0';
	}
	if (isNeg) return -ans;
	else return ans;
}
string moveStr(string s, int offset) {
	if (offset == 0) return s;
	else if (offset > 0) {//x.xxx向右移动
		int fractionLen = s.length() - 2;//小数部分长度 
		s.erase(s.begin() + 1);//去掉小数点 
		if (fractionLen == offset) return s;
		else if (offset > fractionLen) {//移位大于小数部分长度 
			s.append(offset - fractionLen, '0');//末尾补零 
			return s;
		}
		else {//移位小于小数部分长度 
			s=s.insert(offset + 1, ".");//加上小数点
			//bug!!! 写成了fractionLen-offset+1 
			return s;
		}
	}
	else {//x.xxx向左移动 
		s.erase(s.begin() + 1);
		s = s.insert(0, -offset, '0');//前方补零 
		s = s.insert(1, ".");//第一位后面补上小数点 
		return s;
	}
}
int main(void) {
	string s;
	cin >> s;
	if (s[0] == '-') cout << "-";
	s.erase(s.begin());//去除符号位 
	int pos = s.find('E');
	string expStr = s.substr(pos+1, s.length()-pos-1); //获得指数部分字符串,不包括E
	//cout<<expStr<<endl;
	
	s = s.erase(pos, s.length() - pos);//删除指数这个部分
	int exp = string2int(expStr);//获得指数 
	
	//cout<<exp<<endl;
	//cout<<s<<endl;
	cout << moveStr(s, exp) << endl;
	return 0;
}

其它AC代码: 

#include<cstdio>
#include<cstring>
#include<algorithm>
using namespace std;
int main()
{
    char s[10010];
    scanf("%s",s);
    if(s[0]=='-')
        printf("-");
    int pos=0;
    int len=strlen(s);
        while(s[pos]!='E')
           {
               pos++;
           }
    int exp=0;
    for(int i=pos+2;i<len;i++)
    {
        exp=exp*10+(s[i]-'0');
    }
    if(exp==0)
    {
        for(int i=1;i<pos;i++)
            printf("%c",s[i]);
    }
    if(s[pos+1]=='-')
    {
        printf("0.");
        for(int i=0;i<exp-1;i++)
            printf("0");
        printf("%c",s[1]);
        for(int i=3;i<pos;i++)
            printf("%c",s[i]);
    }
    else
    {
        for(int i=1;i<pos;i++)
        {
            if(s[i]=='.')
                continue;
            printf("%c",s[i]);
            if(i==exp+2&&pos-3!=exp)
                printf(".");
        }
        for(int i=0;i<exp-(pos-3);i++)
            printf("0");
    }
    return 0;
}

 

政府科技管理者在推动区域科技成果转化过程中,如何系统性地识别和分析创新资源的配置瓶颈?.docx 政府科技管理者在推动区域科技成果转化过程中,如何系统性地识别和分析创新资源的配置瓶颈? 立即下载

相关推荐

政府科技管理者如何提升区域科技成果转化项目的评价与筛选效率?.docx

科易网基于AI模型+行业大数据,在技术转移、成果转化、技术经纪、知识产权、产业创新、科技招商等垂直领域的多样化应用场景,推出科技创新领域的AI+工具与数智化解决方案,推动科技创新与产业创新智能化发展。

【PAT】A1073 Scientific Notation (20point(s))

文章目录A1073 Scientific Notation (20point(s))Input Specification:Output Specification:Sample Input 1:Sample Output 1:Sample Input 2:Sample Output 2:CodeAnalysis Author: HOU, Qiming Organization: 浙江大学 Tim...

Duke 253

高校技术转移办公室人员在成果转化过程中如何快速提升技术推介效率?.docx

科易网基于AI模型+行业大数据,在技术转移、成果转化、技术经纪、知识产权、产业创新、科技招商等垂直领域的多样化应用场景,推出科技创新领域的AI+工具与数智化解决方案,推动科技创新与产业创新智能化发展。

1073 Scientific Notation (20 分) 全网最细 题目详解 翻译 完整代码 PAT甲级真题解析

1073 Scientific Notation (20 分) 中文翻译:(原题目为英文) 科学记数法是科学家轻松处理非常大或者非常小的数字的方法,它的格式于如下正则表达式相匹配 [±][1-9].[0-9]+E[±][0-9]+ ,也就是说整数部分至少有一个数字,小数部分至少有一个数字,并且数字和该数字的指数符号必须要存在(即使是正数)。现在给定一个用科学记数法表示的实数a,需要你用传统计数方法打印该数,同时保留所有有效数字。 难点单词: Scientific notation 科学记数法 fra

BBBling的博客 474

两相交错并联Boost电路仿真模型(Simulink仿真实现)

内容概要:本文档系统性地介绍了基于Simulink平台的两相交错并联Boost电路仿真模型,属于电力电子变换器建模与仿真研究的重要组成部分。该模型采用交错并联结构,有效提升了系统效率、降低了输出电流纹波,并具备优良的动态响应与系统稳定性。文档不仅聚焦于该特定拓扑的开环与闭环控制实现,还整合了丰富的配套资源,涵盖多种主流DC-DC变换器(如Buck、Boost、LLC、CLLC)、功率因数校正(PFC)电路、PWM整流器、双向充放电系统以及新能源应用场景(如V2G、微电网)等领域的仿真模型。资源体系强调软开关技术、多相交错控制、系统级建模与参数优化设计,所有内容均提供可运行的Simulink仿真文件,部分包含详细的设计报告、计算书及参考文献,具有较强的工程实践与科研复现价值。; 适合人群:电气工程、自动化、电力电子与电力传动等相关专业的硕士博士研究生、高校科研人员,以及从事新能源发电、电动汽车、电源系统设计等领域的工程技术人员。; 使用场景及目标:①支撑高校电力电子与电力系统方向的科研项目,用于新型拓扑结构的建模与先进控制算法的验证;②服务于本科生与研究生的毕业设计、课程设计及高水平学术论文的仿真复现;③为企业在电源产品研发、新能源系统集成等环节提供成熟的仿真方案参考,缩短研发周期,降低试错成本。; 阅读建议:建议使用者首先访问文档末尾提供的完整资源目录链接,按需下载对应仿真模型;在实践过程中,应重点关注模型的参数配置、控制策略实现细节与仿真工况设置,结合配套的说明文档深入理解其工作原理与设计思路,推荐在MATLAB/Simulink环境中动手调试与二次开发,以充分掌握电力电子系统的核心技术。

抖音小游戏上架避坑指南:从软著申请到ICP备案全流程解析

本文详细解析了抖音小游戏上架前必须完成的软著申请和ICP备案全流程,提供了清晰的时间线规划与实操避坑指南。文章重点阐述了个人与企业备案的区别、材料准备要点以及平台审核常见问题,旨在帮助独立开发者和小团队高效、合规地完成游戏上架,避免在行政流程中延误项目。

weixin_29276847的博客 1557

1073 Scientific Notation(字符串处理)

1073 Scientific Notation (20 分) Scientific notation is the way that scientists easily handle very large numbers or very small numbers. The notation matches the regular expression [±][1-9].[0-9]+E[±][0...

virgilshi的博客 364

[pcie]gen6 下 L0p

000b~100b: 触发L0p 操作流程协商工作link width 到target link width.为111b:link width 硬件动态调整。硬件动态:Device control 3 register.target link width=111b当pcie链路检测到空闲状态时,设备可以主动进入L0p状态。L0p 是pcie gen6 新引入的链路状态,是L0的子状态。(5)LINK WIDTH:当LINK WIDTH CHANGE.cmd为Request时表示请求的链路宽度。

BIG_APPLE1的博客 1676

PAT1 1073 Scientific Notation

题目链接 我的github 题目大意 给出一个科学计数法表示的数,现在要求将它转换为正常的数字表示法,并保留所有的有效数字 输入 每组包含一个测试用例,在一行中给出科学计数法表示的数。这个数的长度大小不超过9999字节,且指数的绝对值不超过9999 输出 对每个测试用例输出对应的正常数字表示法所表示的数字,并保留所有有效数字 样例输入 +1.23400E-03 -1.2E+10 样例输出 ...

LSC_333的博客 266

IBM X3650 M4做raid阵列

步骤1.开机出现此界面,同时按ctrl键和h键,进入IBM X3650 M4配置raid界面。 【注】不知道是不是因为我的服务器长期闲置,按键ctrl键和h键居然无法进入raid配置界面。这时候,我们可以进bios同样可以进入raid配置界面。如果你按ctrl键和h键就可以直接进入raid配置界面,那么请忽略此段,直接看步骤2 开机,按键F1,选中system setting ,接着选中Adapters and UEFI Drivers ...

ani5565的博客 2万+

若依(ruoyivue)实现文档在线查看

1、Kkfileview部署 第一步:从kkfileview官方发行版本下载安装包,安装包下载路径: https://gitee.com/kekingcn/file-online-preview/releases, 第二步:解压kkFileView-x.x.x文件(Windows用.zip包,Linux/MacOS用.tar.gz包) 第三步:打开解压后文件夹的bin目录,运行startup脚本(Windows下以管理员身份运行startup.bat,Linux以root用户运行startup.sh) 第四

weixin_46953697的博客 9680

【C++】C++中substr的用法

substr有2种用法: 假设:string s = "0123456789"; string sub1 =s.substr(5);//只有一个数字5表示从下标为5开始一直到结尾:sub1 = "56789" string sub2 =s.substr(5, 3);//从下标为5开始截取长度为3位:sub2 = "567"

柳婼 の blog 8万+

【银河麒麟服务器操作系统】安装英伟达4090D显卡驱动操作指南

本文详细介绍了在银河麒麟高级服务器操作系统V10SP3-2403-X86版本上安装NVIDIA RTX4090D显卡驱动的完整流程。主要内容包括:准备工作检查、开源驱动禁用、运行级别切换、依赖包安装以及交互式安装过程中的关键选项选择(32位库选Yes、X配置选No)。通过禁用nouveau驱动、重建内核引导等步骤确保驱动安装成功,最后通过nvidia-smi命令验证驱动安装情况。文档提供了操作检查表和安装流程图,帮助用户在银河麒麟系统上顺利完成显卡驱动部署。

信创运维工程师 · 银河麒麟 & 容器实战 | 金融生产环境迁移·等保加固 | 142篇原创·17万+阅读 3101

1073 Scientific Notation (20 point(s))

题解 转化为字符串处理。 substr有2种用法: 假设:string s = "0123456789"; string sub1 = s.substr(5); //只有一个数字5表示从下标为5开始一直到结尾:sub1 = "56789" string sub2 = s.substr(5, 3); //从下标为5开始截取长度为3位:sub2 = "567" #include&l...

徐伯莱 284

YOLOv11改进策略【模型轻量化】| 使用 MoblieOne 模块,引入结构重参数化,提高模型检测效率

本文记录的是基于MobileOne的YOLOv11骨干网络改进方法研究。MobileOne的基础模块通过重参数化,。在将其替换YOLOv11的骨干网络后,实现模型轻量化。

Limiiiing的博客 1424

uniapp - 实现安卓App打包上架应用商店详细教程,详解Hbuilder打包编译apk发布上传到应用市场全流程,提供uniApp云打包、离线打包app、原生本地打包,附带APP备案和安卓证书申请

uni-app,安卓,APP,应用商店,打包编译apk,上架到应用市场,如何打包app并发布到主流应用市场,发布为AndroidApp流程,应用备案,如何申请安卓证书,hbuilder发布安卓apk后怎么上传到各家软件商店,创建app证书,uniapp发行原生APP本地打包安卓APK,详细最全的步骤教程,项目打包成apk,云打包,安心打包,安卓app离线打包,一直审核不通过,被拒绝,不符合规范,上架发布失败,申请安卓证书和获取证书信息,uni-app打包发布安卓Android软件到各大应用商店,腾讯应用

🏆 前端领域优质创作者 1万+

1073 Scientific Notation (20point(s)) - C语言 PAT 甲级

1. 数字的正负号决定输出普通数字的正负 2. 指数的正负号决定小数点的移动

有三只土豆 251

以太网MII、RMII、GMII、RGMII(三)

RMII接口收发的数据位宽为2bit,因此管脚数目大为减少,在高密端口PHY中应用较多,但是由于其是MAC和PHY共用一个参考时钟,接口之间的距离不能太远;一般的GMII接口都有两个发送参考时钟:TX_CLK和GTX_CLK,两者的方向是不一样的,前者有PHY提供(同MII),后者由MAC或外部参考时钟源提供,绝大多数GMII接口都是兼容MII接口的,在用作MII模式时,使用TX_CLK和8根数据线中的4根。MII接口中的接收时钟和发送时钟是分开的,而且都是由PHY芯片提供给MAC芯片的。

qq_42357877的博客 2332

PAT(A)1073 Scientific Notation (20point(s))

Sample Input +1.23400E-03 Sample Output 0.00123400 思路: 模拟一下就可。 代码 #include <iostream> #include <algorithm> #include <cstdio> #include <string> #include <cstring> #in...

Sqssq的博客 246

ssm框架搭建

这个是一个在idea上成功跑起来的ssm框架项目,保存在这里方便以后使用直接下载

IEM模型,地表粗糙度模拟

利用微波反演土壤水分时候,利用IEM模型可以实现对随机地表的模拟

PAT----A1073 Scientific Notation (20point(s))

A1073 Scientific Notation (20point(s)) 字符串处理 题意 科学计数法输入,保留有效数字输出,包括末尾的0。 思路 字符串拼接,多试几次就行了。 Sample Input1: +1.23400E-03 Sample Output1: 0.00123400 Sample Input2: -1.2E+10 Sample Output2: -120000000...

qq_43578870的博客 165

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

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

*PAT_甲级_1073 Scientific Notation (20point(s)) (C++)【字符串处理/科学计数法】

1,题目描述 2,思路 3,AC代码 4,解题过程 第一搏 果然还是讨厌这种题目。 冷静分析之后,可能是这个问题,后面的0没有去掉。 第二搏 然而并没有用。 #include<bits/stdc++.h> using namespace std; bool cmp1(int a, int b){return a > b;...

&再见萤火虫&的博客 317

VB摄像头监控

该VB模块可对摄像头捕获的画面进行录像等,可在创建的窗口进行控制

1073. Scientific Notation (20)

题目要求对给定的科学计数法进行解析,并且输出传统计数法表示的数字,要求正数不带正号,小数保留原来的后缀0个数。 这个题的关键是结合string的find、substr方法查找和截取,使用stringstream来转换字符串到数字。 此类问题最主要的是抓住分类讨论的要点,处理尽可能少的情况。

最美的时光 1525

1073 Scientific Notation (20)(20 分)

1073 Scientific Notation (20)(20 分) Scientific notation is the way that scientists easily handle very large numbers or very small numbers. The notation matches the regular expression [+-][1-9]"."[0-9...

galesaur_wcy 544

1073. Scientific Notation (20) 棒棒的

Scientific notation is the way that scientists easily handle very large numbers or very small numbers. The notation matches the regular expression [+-][1-9]"."[0-9]+E[+-][0-9]+ which means that the in

pacmo 222

(PAT 1073) Scientific Notation (字符串模拟题)

Scientific notation is the way that scientists easily handle very large numbers or very small numbers. The notation matches the regular expression [+-][1-9].[0-9]+E[+-][0-9]+ which means that the inte...

alex1997222的博客 246

PAT 1073 Scientific Notation[字符串处理][科学记数法]

1073Scientific Notation(20分) Scientific notation is the way that scientists easily handle very large numbers or very small numbers. The notation matches the regular expression [+-][1-9].[0-9]...

weixin_34356310的博客 113
上一篇: 1054 The Dominant Color (20 point(s))
下一篇: 1080 Graduate Admission
coderwait
博客等级 码龄9年 20粉丝 210原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

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

抵扣说明:

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

余额充值