专栏文章
题解:P14124 [SCCPC 2021] Nihongo wa Muzukashii Desu
P14124题解参与者 1已保存评论 0
文章操作
快速查看文章及其快照的属性,并进行相关操作。
- 当前评论
- 0 条
- 当前快照
- 1 份
- 快照标识符
- @minq3exp
- 此快照首次捕获于
- 2025/12/02 06:30 3 个月前
- 此快照最后确认于
- 2025/12/02 06:30 3 个月前
题意
给我们一些单词,按一定的规则转换后输出:
- 单词结尾为
chimasu,替换成tte。 - 单词结尾为
rimasu,替换成tte。 - 单词结尾为
mimasu,替换成nde。 - 单词结尾为
bimasu,替换成nde。 - 单词结尾为
nimasu,替换成nde。 - 单词结尾为
kimasu,替换成ite。 - 单词结尾为
gimasu,替换成ide。 - 单词结尾为
shimasu,替换成shite。 - 特殊情况:当单词为
ikimasu,直接输出itte。
思路
一开始先将特殊情况给考虑了,因为单词结尾后 位一定相同,所以我们只需要考虑倒数第 位和倒数第 位。
当倒数第 位不为 时,我们直接替换成该替换的规则字母,如果倒数第 位为 ,我们就再看倒数第 位的数,然后在讨论倒数第 位的数。
CPP#include<bits/stdc++.h>
#define int long long
using namespace std;
int t;
string s;
signed main()
{
ios::sync_with_stdio(0);cin.tie(0);cout.tie(0);
cin>>t;
while(t--)
{
cin>>s;
if(s=="ikimasu")
{
cout<<"itte\n";
continue;
}
char b=s[s.size()-6];
char c=s[s.size()-7];
for(int i=0;i<s.size()-7;i++) cout<<s[i];
if(b=='r') cout<<c<<"tte";
if(b=='m') cout<<c<<"nde";
if(b=='b') cout<<c<<"nde";
if(b=='n') cout<<c<<"nde";
if(b=='k') cout<<c<<"ite";
if(b=='g') cout<<c<<"ide";
if(b=='h')
{
if(s[s.size()-7]=='c') cout<<"tte";
else cout<<"shite";
}
cout<<"\n";
}
return 0;
}
相关推荐
评论
共 0 条评论,欢迎与作者交流。
正在加载评论...