Programmers奇妙な文字を作成する
問題:文字列sは1つ以上の単語から構成されています.各単語は1つ以上のスペース文字で区切られます.各単語の偶数の2番目のアルファベットは大文字で、奇数の2番目のアルファベットは小文字で置換された文字列を返す関数で、解決策を完了します.
文字列全体のパリティインデックスではなく、単語(スペース単位)に基づいてパリティインデックスを決定する必要があります. 最初の文字は、0番目のインデックスとして偶数文字でなければなりません.
「tryhelloworld」は、3つの単語「try」、「hello」、「world」から構成されています.各単語の偶数の2番目の文字を大文字に、奇数の2番目の文字を小文字に、すなわち「Try」、「Hello」、「World」に変更します.そこで、「Try Hello World」に戻ります. 条件に注意してください.スペースからインデックスを判断するため、まずs.split(")構文が必要です. ""を基準とした配列を生成します. for文を簡略化し、単語に分割されたss変数をfor(String ss:array)として配列する. 文字列では、スペース(スペース)が大文字と小文字に変換されたか否かを判断する必要がないため、そのフォーマットは以下の通りである(~?false:true;)例外処理を行う. では、単数インデックスと偶数インデックスを判別し、答えに値を蓄積する構文を書き出します.偶数の位置が真の場合は大文字、偽の場合は小文字に変換されます. 完全ソース
条件
I/O例
に答える
cnt = ss.contains(" ") ? 0 : cnt + 1;
/* ss에 " "(띄어쓰기)를 포함하고 있다면 cnt 변수를 +1하여 다음 인덱스로 넘어가고, " "을 포함하지 않은 상황이라면 그대로 진행 */
answer += cnt%2 == 0 ? ss.toLowerCase() : ss.toUpperCase();
//마지막 참 부분의 메서드에만 ; 붙이기
class Solution {
public String solution(String s) {
String answer = "";
int cnt = 0;
String[] array = s.split("");
for(String ss : array) {
cnt = ss.contains(" ") ? 0 : cnt + 1;
answer += cnt%2 == 0 ? ss.toLowerCase() : ss.toUpperCase();
}
return answer;
}
}
Reference
この問題について(Programmers奇妙な文字を作成する), 我々は、より多くの情報をここで見つけました https://velog.io/@dltmddyd321/Programmers이상한-문자-만들기テキストは自由に共有またはコピーできます。ただし、このドキュメントのURLは参考URLとして残しておいてください。
Collection and Share based on the CC Protocol