关于string的练习题目

/*Are they equal*/
#include<iostream>
#include<string>
using namespace std;
int n;
string deal(string s, int & e){
int k = 0;
while(s.length() > 0 && s[0] == ‘0‘){
s.erase(s.begin());
}
if (s[0] == ‘.‘){
s.erase(s.begin());//擦除小数点
while(s.length() > 0 && s[0] == ‘0‘){//擦除非零位前的所有零
s.erase(s.begin());
e--;
}
}
else{
while (k < s.length()&& s[k] != ‘.‘){
k++;
e++;
}
if(k <s.length()){
s.erase(s.begin() + k);
}
}
if (s.length() == 0){
e == 0;
}
int num = 0;
k = 0;
string res;
while (num < n){
if (k < s.length()) res += s[k++];
else res += "0";
num++;
}
return res;
}
int main(){
string s1, s2, s3, s4;
cin >> n >> s1 >> s2;
int e1 = 0, e2 = 0;
s3 = deal (s1, e1);
s4 = deal (s2, e2);
if(s3 == s4 && e1 == e2){
cout<<"Yes 0."<<s3<<"*10^"<<e1<<endl;
}else{
cout<<"No 0."<<s3<<"*10^"<<e1<<" 0."<<s4<<"*10^"<<e2<<endl;
}
return 0;
}

输入样例:

3 12300 12358.9

输出样例:

Yes 0.123*10^5

时间: 2024-10-03 19:06:29

关于string的练习题目的相关文章

Java系列2 --- 你真的知道Java的String对象么?

?在上一篇中说道这篇文章会说java的动态绑定机制,由于这个知识点放在继承中讲会比较合适,说以在这篇文章中先来详细的说说String对象吧. ?只要学过Java的同学,我们都知道Java一共有8中基本类型,但是在Java中最常用的String类型却不属于这8中基本类型中.他是Java.lang包中的一个类.但是String对象在引用传递中JVM的处理却与其他对象不同. ?在正式开始来讲这个String对象的时候我们首先来简单的说明下Java中的值传递和引用传递.正如很多Java说熟知的那样,Ja

string类(c++)

string类是c++默认提供的,但是了解string类的写法也是非常重要的,面试中有许多关于string类的题目,string类能够考察c++类和对象的掌握程度,一定程度上也考察了面试者的编程能力. 下面是string类的一些基本功能,由于面试的时间很短,在这极短的时间内全部实现string类的功能是不可能的,我们可以实现最基本的功能,类中的构造函数.析构函数.赋值,复制的功能. class String { public:     String()     //无参构造函数        :

Java String、StringBuffer和StringBuilder类

package com.fish.string; /*  String 字符串类:     题目:new String("abc")创建了几个对象?  两个对象,一个对象是 位于字符串常量池中,一个对象是位于堆内存中.    */ public class Demo1 {     public static void main(String[] args) {         String str1 = "hello";         String str2 = 

HankerRank刷题第三天(string类型)

今天课比较多加上自己也懒了.就做了一道很简单的string类型的题目.. 有一点值得记录一下 在循环的时候不要把求字符串长度的函数放在循环里面求 #不可取 for(int i=0;i<a.length();i++) #可取 int la=a.length() for(int i=0;i<la;i++)

看看国外的javascript题目,你能全部做对吗?(分享)

本文转自@Aaron的博客,拿过来分享一下.原文:看看国外的javascript题目,你能全部做对吗? 题目一: (function(){ return typeof arguments; })(); "object" arguments是对象,伪数组有两件事要注意这里: 参数不是数组,它是一个数组一样的物体,你可以使用方括号和整数索引的元素,但方法通常可在一个如推上不存在参数数组 Array.prototype.slice.call(arguments); 转成数组 当然argume

[转]看看国外的javascript题目,你能全部做对吗?

叶小钗 的博客最近都在讨论面试题目 正好以前也看过一篇,就借花献佛拿出来分享一下 http://perfectionkills.com/javascript-quiz/ 附带了自己的理解,答案有争议的地方欢迎大家指出 题目一 1 (function(){ 2 return typeof arguments; 3 })();  1 "object" 2 arguments是对象,伪数组有两件事要注意这里: 3 参数不是数组,它是一个数组一样的物体,你可以使用方括号和整数索引的元素,但方法

微软2014实习生及校招秋令营技术类职位,在线编程题目及解答。

题目1 : String reorder 时间限制:10000ms 单点时限:1000ms 内存限制:256MB Description For this question, your program is required to process an input string containing only ASCII characters between '0' and '9', or between 'a' and 'z' (including '0', '9', 'a', 'z'). Y

443. String Compression - LeetCode

Question 443.?String Compression Solution 题目大意:把一个有序数组压缩, 思路:遍历数组 Java实现: public int compress(char[] chars) { if (chars.length == 0) return 0; StringBuilder sb = new StringBuilder(); char cur = chars[0]; int sum = 1; for (int i = 1; i <= chars.length

CF623A Graph and String

CF623A Graph and String 休闲的题目. WA了5次,hack数据爽的一批. 考虑补图. 显然,补图中,出度为0的点是B. 然后二分图染色. 如果不是二分图,就输出"No" 染完色后,看看是否满足数据即可 写的太丑了,捂脸. /*header*/ #include <iostream> #include <cstdio> #include <cstring> #include <algorithm> #include