题解 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等系統)上可以通過安裝「花園明朝字體」 ...
随机推荐
- Codeforces Round447 D树上前缀和
已知完全二叉树和每条边的权值,q次询问,每次给出sta起点和H. w=(H-点到sta的权值),求w>0的所有w的加和. 这题用树上前缀和来写,e[i]记录子树上的点到点i的距离,sum[i][ ...
- Django的settings源码分析
Django其实有两个配置文件,一个是暴露给用户的可以自定义的配置,一个是项目默认的配置,用户如果配置了就用用户的,没有配置就用默认的. 首先需要在settings文件中导入,然后查看settings ...
- vue中keepalive怎么理解?---vue中文社区
vue中keepalive怎么理解? 说在前面: keep-alive是vue源码中实现的一个组件, 感兴趣的可以研究源码 https://github.com/vuejs/vue/blob/dev/ ...
- MongoDB3.4版本新增特性
先说明一下mongod和mongos的含义:mongod是MongoDB系统的主要后台进程,它处理数据请求.管理数据访问和执行后台管理操作:该命令的命令行选项主要用于测试,在场景操作中,使用配置文件选 ...
- 把shp文件处理成Android可以识别中文的版本
针对ArcGIS10.2版本的解决办法(默认中文编码为OEM): 假设现在有一个shp图层文件“图层.shp”,在ArcGIS10.2中可以正常打开,属性表中有中文内容,以此为例进行设置 1.拷贝一个 ...
- Unity容器实现AOP面向切面编程
为什么要有AOP 需求总是变化的,比如经常会对一些方法后期增加日志.异常处理.权限.缓存.事务的处理,遇到这种情况我们往往只能修改类. 为了应对变化,我们常常使用设计模式解决,但是也有其局限性:设计模 ...
- Asp.net core 3.1+EF Core2.2.6+Oracle.EntityFrameworkCore2.1.19连接Oracle数据库
Asp.net Core 3.1+EF Core2.2.6+Oracle.EntityFrameworkCore2.1.19连接Oracle数据库 1.前言 本次主要采用Asp.net core3.1 ...
- Maven国内镜像配置(阿里云)-sunziren
<?xml version="1.0" encoding="UTF-8"?> <settings xmlns="http://mav ...
- Markdown数学公式如何打出回归符号
来源:https://blog.csdn.net/garfielder007/article/details/51646604 函数.符号及特殊字符 语法 效果 语法 效果 语法 效果 \bar{x} ...
- EasyUI笔记(一)Base基础
总结: 1)每个UI都是通过属性.事件和方法运作的 2)用JS加载时只需传入一个参数(用大括号{}包围),包含若干个键值对,之间用逗号隔开: 3)事件也是写在JS加载时的方法中,也是键值对形式,值是匿 ...