NYOJ-1236-挑战密室
ACM模版
描述
题解
这是第八届河南 ACM 省赛的第一题好像,和去年的第一题表达式求值有相似之处,但是由于这个题目明确提示,不会有嵌套,所以不必使用栈,直接模拟一遍就可以了。感觉比去年的那个要简单很多。可是难度等级却比去年的还高……
代码
#include <iostream>
#include <cstring>
#include <map>
#include <cstdio>
#include <string>using namespace std;map<string, int> msi;void init()
{msi["N"] = 14;msi["C"] = 12;msi["O"] = 16;msi["Cl"] = 35;msi["S"] = 32;msi["H"] = 2;msi["Al"] = 27;msi["Ca"] = 40;msi["Zn"] = 65;msi["Na"] = 23;
}int main()
{init();int K;cin >> K;string s;while (K--){cin >> s;int i = 0;while (s[i] != '='){i++;}i++;int coe = 0;while (s[i] >= '0' && s[i] <= '9'){coe *= 10;coe += s[i] - '0';i++;}if (coe == 0){coe = 1;}int res = 0;int tmp, n;while (s[i] != '+' && i < s.length()){if (s[i] == '('){i++;tmp = 0;int tmp_;while (s[i] != ')'){if (s[i] == 'N'){if (s[i + 1] == 'a'){tmp_ = msi["Na"];i++;}else{tmp_ = msi["N"];}}else if (s[i] == 'C'){if (s[i + 1] == 'a'){tmp_ = msi["Ca"];i++;}else if (s[i + 1] == 'l'){tmp_ = msi["Cl"];i++;}else{tmp_ = msi["C"];}}else if (s[i] == 'A'){tmp_ = msi["Al"];i++;}else if (s[i] == 'Z'){tmp_ = msi["Zn"];i++;}else{string a = "";tmp_ = msi[a + s[i]];}i++; int n_ = 0;while (s[i] >= '0' && s[i] <= '9'){n_ *= 10;n_ += s[i] - '0';i++;}if (n_ == 0){n_ = 1;}tmp += tmp_ * n_; }goto tag;}if (s[i] == 'N'){if (s[i + 1] == 'a'){tmp = msi["Na"];i++; }else{tmp = msi["N"];}}else if (s[i] == 'C'){if (s[i + 1] == 'a'){tmp = msi["Ca"];i++;}else if (s[i + 1] == 'l'){tmp = msi["Cl"];i++;}else{tmp = msi["C"];}}else if (s[i] == 'A'){tmp = msi["Al"];i++;} else if (s[i] == 'Z'){tmp = msi["Zn"];i++;}else{string a = "";tmp = msi[a + s[i]];}tag:i++; n = 0;while (s[i] >= '0' && s[i] <= '9'){n *= 10;n += s[i] - '0';i++;}if (n == 0){n = 1;}res += tmp * n;}printf("%04d\n", res * coe);} return 0;
}
NYOJ-1236-挑战密室相关推荐
- 第八届河南省程序设计大赛~~挑战密室 nyoj 1236
挑战密室 时间限制:1000 ms | 内存限制:65535 KB 难度:4 描述 R组织的特工Dr. Kong 为了寻找丢失的超体元素,不幸陷入WTO密室.Dr. Kong必须尽快找到解锁密码逃 ...
- 第八届河南省省赛 A.挑战密室
挑战密室时间限制:1000 ms | 内存限制:65535 KB 难度:4描述 R组织的特工Dr. Kong 为了寻找丢失的超体元素,不幸陷入WTO密室.Dr. Kong必须尽快找到解锁密码逃离,否则 ...
- 化学方程式系列( 试 制 品)(挑战密室)
试 制 品 时间限制:1000 ms | 内存限制:65535 KB 难度:4 描述 ZZ大学的Dr.Kong最近发现实验室的很多试制品都已经用完.由于项目经费有限,为了节省,Dr.Kong决定利用实 ...
- 挑战密室(化学方程式)
Description R组织的特工Dr. Kong 为了寻找丢失的超体元素,不幸陷入WTO密室.Dr. Kong必须尽快找到解锁密码逃离,否则几分钟之后,WTO密室即将爆炸. Dr. Kong发现密 ...
- NYOJ--1236--挑战密室(第八届河南省程序设计大赛)
挑战密室 时间限制:1000 ms | 内存限制:65535 KB 难度:4 描述 R组织的特工Dr. Kong 为了寻找丢失的超体元素,不幸陷入WTO密室.Dr. Kong必须尽快找到解锁密码逃 ...
- Steam中国正式定名“蒸汽平台”
Steam中国正式定名"蒸汽平台" 8月21日,Steam中国终于正式定名,新名叫做:"蒸汽平台".Steam中国(蒸汽平台)几乎完全独立于Steam,游戏库也 ...
- 《挑战程序设计竞赛(第2版)》习题册攻略
本项目来源于GitHub 链接: 项目GitHub链接 1 前言 项目为<挑战程序设计竞赛(第2版)>习题册攻略,已完结.可配合书籍或笔记,系统学习算法. 题量:约200道,代码注释内含详 ...
- 聚观早报|饿了么星选停止运营;百度2022财报全年营收1236.75亿元
今日要闻:饿了么星选停止运营:百度2022财报全年营收1236.75亿元:微软收购暴雪获力挺:全国首例!这一代练平台被叫停:现代汽车已开始在美国生产电动汽车 饿了么星选停止运营 2 月 22 日,饿了 ...
- 数字化转型的趋势、挑战与战略
数字化转型需要结合企业自身案例的痛点进行细分,逐步用技术手段替代人工的操作. 在全球经济进入数字化转型时期,数字化转型已成为传统企业必须付诸行动的必选题.企业为什么要进行数字化转型?如何把 ...
- 一个老的游戏,据说全世界只有不到4000人可以走出房间.密室逃脱--之“天蓝色房间”...
前面发布了: 一:密室逃脱--之"深红色房间" 二:密室逃脱--之"天蓝色房间" 三:密室逃脱--之"天蓝色房间" 完结版 密室游戏已经全部 ...
最新文章
- Python基础学习!基本元素,数字,字符串以及变量
- php common errors
- 17. 搭建FTP服务端
- 计算机基础教案(XP操作系统)
- Windows下nginx-http-flv-module服务部署
- buu Dangerous RSA
- B - 一只小蜜蜂...
- Java的深度:通过协方差暴露的API泄漏
- java调用android_Java及Android中常用链式调用写法简单示例
- Memcached windows 下安装与应用
- Google搜索命令语法大全
- STM8单片机STVD环境新建工程笔记
- VC中的_variant_t和_bstr_t
- 颂钵带给我们是什么感受
- 【读书笔记】马化腾:先人一步-冷湖,腾讯成长之路:模仿+学习+实践+创新+合作+超越
- vue项目中加载使用腾讯地图
- 入门,前后端实现简单账号密码登录
- Redis基本数据类型和使用场景
- C语言指针 * 和 总结
- 《混沌映射与比特重组的图像加密》(平萍等)一文的算法改进和展望