题解 AT859 【元素の系統名】
介绍一种使用string字符串的方法。
\(string\)是\(C++\)、\(java\)、\(VB\)等编程语言中的字符串,字符串是一个特殊的对象,属于引用类型。 \(C++\)标准库中\(string\)类以类型的形式对字符串进行封装,且包含了字符序列的处理操作。——百度百科
思路:
初步想法:
我们可以定义一个字符串,然后逐位输出对应的原子序数。定义一个字符串s,并输入。
string s;
cin>>s;
- 按照百位->十位->个位的顺序进行判断&输出:先判断百位并输出。
if(s[0]=='0')cout<<"Nil";
if(s[0]=='1')cout<<"Un";
if(s[0]=='2')cout<<"Bi";
if(s[0]=='3')cout<<"Tri";
if(s[0]=='4')cout<<"Quad";
if(s[0]=='5')cout<<"Pent";
if(s[0]=='6')cout<<"Hex";
if(s[0]=='7')cout<<"Sept";
if(s[0]=='8')cout<<"Oct";
if(s[0]=='9')cout<<"Enn";
- 判断十位并输出。注意,这里有一些坑点需要注意。
if(s[1]=='0' && s[0]!='9')cout<<"nil";
if(s[1]=='0' && s[0]=='9')cout<<"il";
if(s[1]=='1')cout<<"un";
if(s[1]=='2')cout<<"bi";
if(s[1]=='3')cout<<"tri";
if(s[1]=='4')cout<<"quad";
if(s[1]=='5')cout<<"pent";
if(s[1]=='6')cout<<"hex";
if(s[1]=='7')cout<<"sept";
if(s[1]=='8')cout<<"oct";
if(s[1]=='9')cout<<"enn";
- 最后判断个位并输出。
if(s[2]=='0' && s[1]!='9')cout<<"nil";
if(s[2]=='0' && s[1]=='9')cout<<"il";
if(s[2]=='1')cout<<"un";
if(s[2]=='2')cout<<"bi";
if(s[2]=='3')cout<<"tri";
if(s[2]=='4')cout<<"quad";
if(s[2]=='5')cout<<"pent";
if(s[2]=='6')cout<<"hex";
if(s[2]=='7')cout<<"sept";
if(s[2]=='8')cout<<"oct";
if(s[2]=='9')cout<<"enn";
- 输出最后的词尾。这里需要特判一下。
if(s[2]=='2' || s[2]=='3')cout<<"um";
else cout<<"ium";
代码实现:
#include <bits/stdc++.h>
using namespace std;
int main()
{
string s;
cin>>s;
//--------百位--------
if(s[0]=='0')cout<<"Nil";
if(s[0]=='1')cout<<"Un";
if(s[0]=='2')cout<<"Bi";
if(s[0]=='3')cout<<"Tri";
if(s[0]=='4')cout<<"Quad";
if(s[0]=='5')cout<<"Pent";
if(s[0]=='6')cout<<"Hex";
if(s[0]=='7')cout<<"Sept";
if(s[0]=='8')cout<<"Oct";
if(s[0]=='9')cout<<"Enn";
//--------十位--------
if(s[1]=='0' && s[0]!='9')cout<<"nil";
if(s[1]=='0' && s[0]=='9')cout<<"il";
if(s[1]=='1')cout<<"un";
if(s[1]=='2')cout<<"bi";
if(s[1]=='3')cout<<"tri";
if(s[1]=='4')cout<<"quad";
if(s[1]=='5')cout<<"pent";
if(s[1]=='6')cout<<"hex";
if(s[1]=='7')cout<<"sept";
if(s[1]=='8')cout<<"oct";
if(s[1]=='9')cout<<"enn";
//--------个位--------
if(s[2]=='0' && s[1]!='9')cout<<"nil";
if(s[2]=='0' && s[1]=='9')cout<<"il";
if(s[2]=='1')cout<<"un";
if(s[2]=='2')cout<<"bi";
if(s[2]=='3')cout<<"tri";
if(s[2]=='4')cout<<"quad";
if(s[2]=='5')cout<<"pent";
if(s[2]=='6')cout<<"hex";
if(s[2]=='7')cout<<"sept";
if(s[2]=='8')cout<<"oct";
if(s[2]=='9')cout<<"enn";
//--------尾数--------
if(s[2]=='2' || s[2]=='3')cout<<"um";
else cout<<"ium";
return 0;
}
题解 AT859 【元素の系統名】的更多相关文章
- 諾基亞定制的Android系統名為 Z Launcher
N1這款產品似乎沒有諾基亞的傳統風格,搭載Android系統以及酷似iPad mini的外觀,都在向外界傳遞著一個信號:諾基亞在變化.不過,沒有了移動設備部門的諾基亞,仍然心系消費電子市場,N1會是個 ...
- Linux-PAM(Linux下的密碼認證和安全机制)系統管理員指南(中文版)
he Linux-PAM 系统管理员指南作者:Andrew G. Morgan, morgan@linux.kernel.org翻译:孙国清(Thomas Sun),thomassun@yeah.ne ...
- oracle系統表、數據字典介紹與日常問題診斷
oracle系統表.數據字典介紹與日常問題診斷 數據字典是由唯讀的table和view組成的,產生於$oracle_home\rdbms\admin\catalog.sql.裡面儲存Oracle資料庫 ...
- USB多重系統 - 開機碟工具 – WinSetupFromUSB
WinSetupFromUSB下載與安裝 讓USB磁碟擁有多重開機的功能,WinSetupFromUSB有著提軟體和硬體的高相容性. [官方網頁]:http://www.winsetupfromusb ...
- WPF度量系統
和Winform不同,WPF的度量單位不是像素,而是設備無關單位DIU,其大小總是1/96吋 那麽,WPF中一個寬度爲96的按鈕,到底是多少個像素呢? 答:取決於系統DPI. 計算公式爲:實際像素 = ...
- MQTT教學(二):安裝MQTT伺服器Mosquitto,Windows系統篇
http://swf.com.tw/?p=1005 「認識MQTT」文章提到,MQTT的訊息全都透過稱為代理人(broker)的伺服器交流.本文將說明頗受歡迎的開放原始碼MQTT伺服器Mosquitt ...
- php 获取数组第一个元素 以及最后一个元素 && 最后一个元素的键名
1. current() 函数返回数组中的当前元素的值. 每个数组中都有一个内部的指针指向它的"当前"元素,初始指向插入到数组中的第一个元素. end() - 将内部指针指向数组中 ...
- 各廠商ERP系統架構圖連結 (ERP流程圖)(轉)
各廠商ERP系統架構圖連結 (ERP流程圖) 資料來源 Google圖片搜尋ERP整理而來 資通電腦 ArgoERP 資通電腦 Oracle ERP 鼎新電腦 Workflow ERP鼎新電腦 S ...
- 如何讓Android系統顯示CJK擴展區漢字
由於一些特殊需要,需要在個人設備上顯示CJK擴展區漢字,經多方詢問並驗證,找到了一下辦法,暫總結如下. 一.電腦上顯示 在電腦(Windows,Linux,Mac等系統)上可以通過安裝「花園明朝字體」 ...
随机推荐
- 邓士鹏【MySql大全】
禁止使用系统关键字: typename 1.计算两个日期的时间差函数 SELECT TIMESTAMPDIFF(MONTH,'2009-10-01','2009-09-01'); interval可是 ...
- python filter函数(40)
一.filter函数简介 filter函数主要用来筛选数据,过滤掉不符合条件的元素,并返回一个迭代器对象,如果要转换为列表list或者元祖tuple,可以使用内置函数list() 或者内置函数tupl ...
- oracle中sql语句的to_date语法
完整日期:TO_DATE('2009-4-28 00:00:00', 'yyyy-mm-dd hh24:mi:ss'); to_date('2008/09/20','yyyy/mm/dd') 创建视图 ...
- Linux基础:df命令总结
本文只总结一些常用的用法,更详细的说明见man df和 df --help. df命令 df命令用于显示目前在Linux系统上的文件系统的磁盘使用情况统计. df命令主要是从各文件系统的Super b ...
- 硬件知识整理part1--电阻E系列行业规范
仁者,人心也,义者,人路也. --孟子 “ E ”表示“指数间距”(Exponential Spacing) 在上个20世纪的电子管时代,电子元器件厂商为了便于元件规格的管理和选用.大规模生产的电 ...
- 自动驾驶定位算法-直方图滤波(Histogram Filter)定位
1.直方图滤波(Histogram Filter)的算法思想 直方图滤波的算法思想在于:它把整个状态空间dom(x(t))切分为互不相交的部分\(b_1.b_2....,b_{n-1}\),使得: 然 ...
- MS SQL为字段添加说明
以ms sql server 14 v17为例. 如下表dbo.Q中有一个字段'' 首先在数据库的系统存储过程列表中: 找到sys.sp_addextendedproperty,使用这个为字段添加一 ...
- Wannafly Winter Camp 2020 Day 5F Inversion Pairs - 拉格朗日插值,dp
给定 \(n \leq 10^7\),求所有 \(n\) 的全排列的逆序对个数的 \(k \leq 100\) 次方和 Solution \(f[i][j]\) 表示 \(i\) 个元素,逆序对个数为 ...
- Sikerio --《只狼》
“狼啊,替我断绝不死吧”
- ffmpeg基本功能使用
任务描述:由给定图像序列合成 24fps 视频 方案一 直接对图像进行操作,适用于图像名比较规范且默认即为所需顺序 ffmpeg -f image2 -i ./images_crop_%d.png - ...