奇妙な文字を作成
12730 ワード
質問する
コード#コード#
#include <bits/stdc++.h>
using namespace std;
string solution(string s)
{
cin.tie(NULL);
ios_base::sync_with_stdio(false);
string answer = "";
int cnt = 0;
queue<char> q;
vector<char> v;
for (int i = 0; i < s.size(); i++)
{
q.push((s[i]));
}
while (!q.empty())
{
if (q.front() == ' ')
{
v.push_back(q.front());
q.pop();
cnt = 0;
continue;
}
if (cnt == 0 || cnt % 2 == 0)
{
if (q.front() >= 97 && q.front() <= 122)
{
v.push_back(q.front() - 32);
q.pop();
cnt++;
}
else if (q.front() >= 65 && q.front() <= 90)
{
v.push_back(q.front());
q.pop();
cnt++;
}
}
else if (cnt % 2 != 0)
{
if (q.front() >= 97 && q.front() <= 122)
{
v.push_back(q.front());
q.pop();
cnt++;
}
else if (q.front() >= 65 && q.front() <= 90)
{
v.push_back(q.front() + 32);
q.pop();
cnt++;
}
}
}
for (int i = 0; i < v.size(); i++)
{
answer += v[i];
}
cout << answer << endl;
return answer;
}
Queue資料構造を使用して表示します.cnt
インデックス番号、抜け出した時は、大文字が元
v
エpush
和pop
小文字+32
または-32
(大文字)変更.Reference
この問題について(奇妙な文字を作成), 我々は、より多くの情報をここで見つけました https://velog.io/@aksel26/이상한-문자-만들기テキストは自由に共有またはコピーできます。ただし、このドキュメントのURLは参考URLとして残しておいてください。
Collection and Share based on the CC Protocol