[SWEA] 7272. 眼鏡がない!(Java)
14156 ワード
[問題のショートカット]https://swexpertacademy.com/main/code/problem/problemDetail.do?problemLevel=3&contestProbId=AWl0ZQ8qn7UDFAXz&categoryId=AWl0ZQ8qn7UDFAXz&categoryType=CODE&problemTitle=7272&orderBy=FIRST_REG_DATETIME&selectCodeLang=ALL&select-1=3&pageSize=10&pageIndex=1
質問する
ある日、景根は2文字の大文字の文字列を比較せざるを得なかったが、この日はたまたま眼鏡がなかった.
景根は視力が悪く、眼鏡を外すと文字列を文字単位に区別できるが、両文字が全く同じかどうかは分からない.
特にアルファベット大文字の場合、文字中の穴数が同じであれば同じ文字とし、異なるであれば異なる文字とする.
たとえば、穴が1つもないCEFHIGJKLMNSTUVXYZを同じ文字と見なします.
穴のあるADOP 2 Dを同じ文字と見なします.
唯一2つの穴がある文字Bは唯一正確に知ることができる.
アルファベットの大文字からなる2つの文字列を指定すると、景根は2つの文字列が同じかどうかを判別します.
入力
第1行は、試験例の数Tを与える.
各テスト・インスタンスの最初の行では、2つの文字列が1つのスペースに区別されます.
各文字列はアルファベットの大文字で構成され、長さは10以下です.
しゅつりょく
各テストケースは「#x」を出力します(xはテストケース番号を表し、1から).
指定された2つの文字列が景根で同一と見なされた場合、「SAME」が出力され、逆に「DIFF」が出力されます.
に答えるに入力された文字列をint型配列に変換し、各大文字穴の数に値します. CEFHIJKLMNSTUVXYZ=穴0 ADOPQR=穴1 B=穴2 の2つの文字列は同じですか? 長さが異なるDIFFは、長さが同じ場合にのみ を比較する.
右、左文字列それぞれ をチェック
コード#コード#
質問する
ある日、景根は2文字の大文字の文字列を比較せざるを得なかったが、この日はたまたま眼鏡がなかった.
景根は視力が悪く、眼鏡を外すと文字列を文字単位に区別できるが、両文字が全く同じかどうかは分からない.
特にアルファベット大文字の場合、文字中の穴数が同じであれば同じ文字とし、異なるであれば異なる文字とする.
たとえば、穴が1つもないCEFHIGJKLMNSTUVXYZを同じ文字と見なします.
穴のあるADOP 2 Dを同じ文字と見なします.
唯一2つの穴がある文字Bは唯一正確に知ることができる.
アルファベットの大文字からなる2つの文字列を指定すると、景根は2つの文字列が同じかどうかを判別します.
入力
第1行は、試験例の数Tを与える.
各テスト・インスタンスの最初の行では、2つの文字列が1つのスペースに区別されます.
各文字列はアルファベットの大文字で構成され、長さは10以下です.
しゅつりょく
各テストケースは「#x」を出力します(xはテストケース番号を表し、1から).
指定された2つの文字列が景根で同一と見なされた場合、「SAME」が出力され、逆に「DIFF」が出力されます.
に答える
コード#コード#
import java.util.Scanner;
public class N7272 {
static String Answer; // DIFF or SAME
public static void main(String[] args) {
// TODO SWEA 안경이 없어!
Scanner sc = new Scanner(System.in);
int T = sc.nextInt();
for(int test_case = 1; test_case <= T; test_case++)
{
String str1 = sc.next(); //길이 10이하 문자열
String str2 = sc.next();
int left = 0;
int right = 0;
Answer = "SAME";
for(int i = 0; i < str1.length(); i++)
{
if(str1.length() != str2.length()) {
Answer = "DIFF";
break;
}
// 왼쪽 문자열 숫자 변환
if(str1.charAt(i) == 'B') {
left = 2;
}else if(str1.charAt(i) == 'A' || str1.charAt(i) == 'D' || str1.charAt(i) == 'P' || str1.charAt(i) == 'Q'
|| str1.charAt(i) == 'O' || str1.charAt(i) == 'R') {
left = 1;
}else {
left = 0;
}
// 오른쪽 문자열 숫자 변환
if(str2.charAt(i) == 'B') {
right = 2;
}else if(str2.charAt(i) == 'A' || str2.charAt(i) == 'D' || str2.charAt(i) == 'P' || str2.charAt(i) == 'Q'
|| str2.charAt(i) == 'O' || str2.charAt(i) == 'R') {
right = 1;
}else {
right = 0;
}
if(left != right) {
Answer = "DIFF";
break;
}
}
System.out.println("#" + test_case + " " + Answer);
}
}
}
Reference
この問題について([SWEA] 7272. 眼鏡がない!(Java)), 我々は、より多くの情報をここで見つけました https://velog.io/@kimjy199/SWEA-7272.-안경이-없어-Javaテキストは自由に共有またはコピーできます。ただし、このドキュメントのURLは参考URLとして残しておいてください。
Collection and Share based on the CC Protocol