首页 > 其他分享 >1044 火星数字

1044 火星数字

时间:2024-04-18 10:26:35浏览次数:24  
标签:数字 1044 int long vec using tam 火星 string

最最严重的问题,
如果字符串只有一个的时候不一定就是个位,也可能是十位,这要取决于在哪个数组中出现。
还有如果是数字,比如13,那么十位是1,个位是0没问题吧,按照平时应该输出tam tret,但是这题的要求是只输出tam即可。
所以也要在代码里面特判。
我真的想吐槽C++字符串处理,java明明一个split搞定的东西,搁这截他妈的半天。

#include <bits/stdc++.h>
using namespace std;
const int inf = 0x3f3f3f3f;
#define ll long long
string ge[] = {"tret","jan", "feb", "mar", "apr", "may", "jun", "jly", "aug", "sep","oct", "nov", "dec"};
string shi[] = {" ","tam", "hel", "maa", "huh", "tou", "kes", "hei", "elo", "syy", "lok", "mer", "jou"};
using namespace std;
int main() {
	int n;
	cin>>n;
	string t;
	getline(cin,t);
	for(int i=0; i<n; i++) {
		string s;
		getline(cin,s);
		if(isdigit(s[0])) {
			int shuzi = stoi(s);
			int g = shuzi % 13;
			int s = shuzi / 13;
			if(s && g) {
				cout << shi[s] << " " << ge[g] << '\n';
			}else if(s){
				cout << shi[s] << '\n';
			}else if(g){
				cout << ge[g] << '\n';
			}else{
				cout << ge[0] << '\n';
			}
		} else {
			stringstream is(s);
			vector<string> vec;
			while(getline(is,s,' ')){
			   vec.push_back(s);
			}
			int res = 0;
			if(vec.size()==1){
				for(int j=0;j<=12;j++){
				    if(ge[j]==vec[0]){
				    	res += j;
				    	break;
					}
				}
				for(int j=1;j<=12;j++){
					if(shi[j]==vec[0]){
						res += j * 13;
						break;
					}
				}
			}else{
                for(int j=1;j<=12;j++){
                	if(shi[j]==vec[0]){
                		res += j * 13;
						break; 
					}
				}
				for(int j=0;j<=12;j++){
					if(ge[j]==vec[1]){
						res += j;
						break;
					}
				}
			}
			cout << res << '\n';
		}
	}
	return 0;
}

标签:数字,1044,int,long,vec,using,tam,火星,string
From: https://www.cnblogs.com/chengyiyuki/p/18142924

相关文章

  • 洛谷题单指南-动态规划1-P1216 [USACO1.5] [IOI1994]数字三角形 Number Triangles
    原题链接:https://www.luogu.com.cn/problem/P1216题意解读:计算数字三角形最高点到最后一行路径之和最大值,典型线性DP。解题思路:设a[i][j]表示数字三角形的值,设dp[i][j]表示从最高点到第i行第j列路径之和的最大值,由于每一步可以走到左下方的点也可以到达右下方的点,所以dp[i][......
  • Python-数字取证秘籍(三)
    Python数字取证秘籍(三)原文:zh.annas-archive.org/md5/941c711b36df2129e5f7d215d3712f03译者:飞龙协议:CCBY-NC-SA4.0第六章:阅读电子邮件和获取名称的配方本章涵盖了以下配方:解析EML文件查看MSG文件订购外卖盒子里有什么?解析PST和OST邮箱介绍一......
  • 特斯拉宣布 10%大裁员;刘强东数字人开启直播首秀丨 RTE 开发者日报 Vol.185
       开发者朋友们大家好: 这里是「RTE开发者日报」,每天和大家一起看新闻、聊八卦。我们的社区编辑团队会整理分享RTE(RealTimeEngagement)领域内「有话题的新闻」、「有态度的观点」、「有意思的数据」、「有思考的文章」、「有看点的会议」,但内容仅代表编......
  • 数字转中文
    网上抄的packagecom.bdip.common.utils;/***@authorgx*@date20240327*数字工具类**/publicclassNumberUtil{/***转换阿拉伯数字到中文字符*@paramnum*@return*/publicstaticStringcnNumConvertor(intnum){......
  • Excel提取数字公式
    =LEFT(TEXTJOIN("",TRUE,FILTER(MID(C31,SEQUENCE(LEN(C31)),1),ISNUMBER(VALUE(MID(C31,SEQUENCE(LEN(C31)),1))))),3)假设你要从单元格A1中提取连续数字,你可以使用以下公式:excelCopyCode=TEXTJOIN("",TRUE,FILTER(MID(A1,ROW(INDIRECT("1:"&LEN......
  • 数字先锋 | 加“数”蝶变,打造政务服务“心温度”!
    近年来,5G、云计算、大数据等新兴数字技术的发展如火如荼,不断重塑着经济社会治理模式。与此同时,数字政务也成为加速数字化转型与信息安全保障的关键举措。在此背景下,四川省广安市积极开启政务国产化进程,不断提升自身履职能力与政务服务能力。通过携手天翼云,广安市打造了安全可靠的......
  • 1019 数字黑洞(stl)
    第一次知道sprintf这个函数,孤陋寡闻了。写法一,#include<bits/stdc++.h>usingnamespacestd;intmain(){ intn; cin>>n;charcs[100];sprintf(cs,"%04d",n);inta=0,b=0;while(a-b!=6174){ sort(cs,cs+4,greater<char>());//降序......
  • 数字转中文(含小数点)
    numberToChinese(num){return(num)=>{varAA=newArray('零','一','二','三','四','五','六','七','八','九','十');var......
  • AI数字人互动大屏:如何改变我们的生活?
    随着科技的飞速进步和人工智能技术的日益成熟,智能制造正在成为推动制造业转型升级的核心力量。互动数字人具有强大的情感分析能力,可以根据观众的表情、语气等实时反馈,作出恰当而富有情感的回应。这不仅让每一次的交流变得更为生动和深入,也为观众提供了个性化、定制化的服务体验。......
  • 平台工程在企业数字化转型中的战略价值
    要建设成功、有弹性和面向未来的平台,需要做到这三点:了解需求、预测可能面临的挑战并制定经得起时间考验的解决方案。 了解需求是指理解利益相关者的要求和目标,无论他们是最终用户、开发人员还是平台生态系统中的其他相关方。这包括开展全面研究、收集反馈和分析数据,以深入了解......