当前位置: 首页 > article >正文

gesp(三级)(8)洛谷:B3926:[GESP202312 三级] 单位转换

gesp(三级)(8)洛谷:B3926:[GESP202312 三级] 单位转换

在这里插入图片描述

题目描述

小杨这周的数学作业是做单位转换,喜欢编程的小杨决定编程帮他解决这些问题。

小杨只学了长度单位和重量单位,具体来说:

  • 长度单位包括千米(km)、米(m)、毫米(mm),它们之间的关系是: 1 km = 1000 m = 1000000 mm 1\text{km} = 1000\text{m} = 1000000\text{mm} 1km=1000m=1000000mm

  • 重量单位包括千克(kg)、克(g)、毫克(mg),它们之间的关系是: 1 kg = 1000 g = 1000000 mg 1\text{kg} = 1000\text{g} = 1000000\text{mg} 1kg=1000g=1000000mg

小杨的作业只涉及将更大的单位转换为更小的单位,也就是说,小杨的作业只会包含如下题型:米转换为毫米,千米转换为毫米,千米转换为米,克转换为毫克,千克转换为毫克,千克转换为克。

现在,请你帮忙完成单位转换的程序。

输入格式

输入的第一行为一个整数,表示题目数量。

接下来 N N N 行,每行一个字符串,表示转换单位的题目,格式为 x x x 单位 1 = ? 1 = ? 1=? 单位 2 2 2。其中, x x x 为一个不超过 1000 1000 1000 的非负整数, 单位 1 1 1 和 单位 2 2 2 分别为两个单位的英文缩写,保证它们都是长度单位或都是重量单位,且 单位 1单位 2 更大。

例如,如果题目需要你将 1 km 1\text{km} 1km 转换为 mm \text{mm} mm,则输入为 1 km = ? mm

保证 1 ≤ N ≤ 1000 1\le N \le 1000 1N1000

输出格式

输出 N N N 行,依次输出所有题目的答案,输出时,只需要将输入中的 ? ? ? 代入答案,其余部分一字不差地输出即可。由于小杨的题目只涉及将更大的单位转换为更小的单位,并且输入的 x x x 是整数,因此答案一定也是整数。

例如,如果题目需要你将 1 km 1\text{km} 1km 转换为 mm \text{mm} mm,则输入为 1 km = ? mm。则你需要输出 1 km = 1000000 mm

样例 #1

样例输入 #1

2
1 km = ? mm
1 m = ? mm

样例输出 #1

1 km = 1000000 mm
1 m = 1000 mm

样例 #2

样例输入 #2

5
100 m = ? mm
1000 km = ? m
20 kg = ? g
200 g = ? mg
0 kg = ? mg

样例输出 #2

100 m = 100000 mm
1000 km = 1000000 m
20 kg = 20000 g
200 g = 200000 mg
0 kg = 0 mg

AC代码(100分)

#include<bits/stdc++.h>
using namespace std;
int n; 
int main(){
	cin>>n;
	while(n--){
		int a;
		string b,c,d,e;
		cin>>a>>b>>c>>d>>e;
		//长度单位转换 
		if(b=="km" && e=="m"){
			cout<<a<<" "<<b<<" "<<c<<" "<<a*1000<<" "<<e<<endl;
		}else if(b=="m" && e=="mm"){
			cout<<a<<" "<<b<<" "<<c<<" "<<a*1000<<" "<<e<<endl;
		}else if(b=="km" && e=="mm"){
			cout<<a<<" "<<b<<" "<<c<<" "<<a*1000000<<" "<<e<<endl;
		}
		//重量单位转换 
		if(b=="kg" && e=="g"){
			cout<<a<<" "<<b<<" "<<c<<" "<<a*1000<<" "<<e<<endl;
		}else if(b=="g" && e=="mg"){
			cout<<a<<" "<<b<<" "<<c<<" "<<a*1000<<" "<<e<<endl;
		}else if(b=="kg" && e=="mg"){
			cout<<a<<" "<<b<<" "<<c<<" "<<a*1000000<<" "<<e<<endl;
		}
	}
	return 0;
} 

文末彩蛋:

点击王老师青少年编程主页有更多精彩内容


http://www.kler.cn/a/447254.html

相关文章:

  • 让汉语和英语一样长的字符编码
  • OB删除1.5亿数据耗费2小时
  • Redis的主从集群以及哨兵机制学习总结
  • PHY6239:具有高精确度AFE的无线MCU芯片,常用在智能穿戴上
  • STL--函数对象
  • 手机无法连接电脑,如何解决(快速排除手机与电脑连接问题的方法)
  • HarmonyOS(71) 自定义事件分发之TouchTestStrategy使用说明
  • 电脑提示ntdll.d缺失是什么原因?不处理的话会怎么样?ntdll.dll文件缺失快速解决方案来啦!
  • 数据云平台的可观测性
  • 【Leecode】Leecode刷题之路第87天之扰乱字符串
  • SKETCHPAD——允许语言模型生成中间草图,在几何、函数、图算法和游戏策略等所有数学任务中持续提高基础模型的性能
  • ip_output函数
  • 音视频学习(二十六):http-flv
  • Docker搭建kafka环境
  • 线性分类器(KNN,SVM损失,交叉熵损失,softmax)
  • 微信小程序-生成骨架屏
  • nbcio-vue版本第一次登录出现404问题
  • Docker安全性与最佳实践
  • Hive其五,使用技巧,数据查询,日志以及复杂类型的使用
  • 【VSCode】常用插件汇总
  • linux应用编程(点亮LED)
  • VSCode 中 Git 功能比较:内置 Git、GitLens 与 Git History 插件
  • 腾讯游戏安全移动赛题Tencent2016A
  • gesp(二级)(8)洛谷:B3866:[GESP202309 二级] 数字黑洞
  • 云手机测评:云端赋能的智能移动新势力
  • 解决vscode ssh远程连接服务器一直卡在下载 vscode server问题