zoukankan      html  css  js  c++  java
  • B1016 部分A+B (15分)

    B1016 部分A+B (15分)

    输入格式:

    输入在一行中依次给出 A、DA、B、DB,中间以空格分隔,其中
    (0<A,B<10^10)

    输出格式:

    在一行中输出 PA+PB的值。

    输入样例 1:

    3862767 6 13530293 3
    

    输出样例 1:

    399
    

    输入样例 2:

    3862767 1 13530293 8
    

    思路

    关键是首先处理出,只含有DA的字符串。
    然后将该字符串转化为整数相加。
    使用c++的特性

    c++11 数值类型和字符串的相互转换 - 农民伯伯-Coding - 博客园 https://www.cnblogs.com/gtarcoder/p/4925592.html

    to_string()可以数字转为字符串

    /*字符串(string)转为数字*/
    std::string str = "1000";
    int val = std::stoi(str);
    long val = std::stol(str);
    float val = std::stof(str);
    
    /*字符串(char*)转为数字*/
    atoi: 将字符串转换为 int
    atol: 将字符串转换为long
    atoll:将字符串转换为 long long
    atof: 将字符串转换为浮点数
    

    AC代码

    #include<bits/stdc++.h>
    using namespace std;
    int main(void){
    	string a,b;
    	char da, db;
    	int m,i=0;
    	cin >> a >> da >> b >> db;
    	while(i<a.length()) {
    		if(a[i] != da){
    			a.erase(a.begin() + i);
    			i--; 
    		}
    		i++;
    	}
    	//cout <<a<<endl;/*取得对应字符串成功*/
    	i=0;
    	while(i<b.length()) {
    		if(b[i] != db){
    			b.erase(b.begin() + i);
    			i--; 
    		}
    		i++;
    	}
    	//cout <<b<<endl;/*取得对应字符串成功*/
    	
    	if(a!="" && b!=""){/* stol 函数对空字符串报错*/
    		m =stol(a) + stol(b);
    	}
    	else{
    		if(a==""&& b!=""){
    			m=stol(b);
    		}
    		else if(a=="" && b==""){
    			m=0;
    		}
    		else
    			m=stol(a);
    	}
    	printf("%d",m);
    	return 0;
    }
    
  • 相关阅读:
    Hihocoder-小Hi的烦恼
    Python包下载与离线安装
    Shell输出颜色设置
    MySQL主从配置
    MySQL初始化与用户配置
    [转]常用 GDB 命令中文速览
    搭建github静态博客
    树莓派上手
    vim安装与配置
    数组,看了你就懂了!
  • 原文地址:https://www.cnblogs.com/lingr7/p/10300721.html
Copyright © 2011-2022 走看看