ABOUT ME

-

Today
-
Yesterday
-
Total
-
  • 7-6: 문자열포함관계조사
    Basic 2018. 10. 25. 21:23

    문자열포함관계조사 ( str6.cpp )

     

    문제


    문자열 A와 B가 주어질 때, 문자열 B가 문자열 A에 포함되어 있는지를 조사하는 프로그램을 작성하시오. 단, 문자열 A와 B에는 알파벳으로만 이루어져 있으며, 공백은 포함되지 않는다고 가정한다.

     

    입력


    첫 번째 줄에 문자열 A, 두 번째줄에 문자열 B가 주어진다. 각각의 길이는 1,000을 넘지 않는다.

     

    출력


    문자열 B가 문자열 A에 포함되면 YES, 아니면 NO를 출력한다.

     

    예제 입력

    Watermelon
    melon

    예제 출력

    YES


    import java.util.Scanner;

    public class str6 {

    /**
    *
    * 문제:
    *
    문자열 A와 B가 주어질 때, 문자열 B가 문자열 A에 포함되어 있는지를 조사하는 프로그램을 작성하시오. 단, 문자열 A와 B에는 알파벳으로만 이루어져 있으며, 공백은 포함되지 않는다고 가정한다.

    *
    *
    * 입력:
    *
    *
    * 출력:
    *
    *
    * 예제 입력:
    *
    Watermelon
    melon
    * 예제 출력:
    YES *
    *
    * @param args
    */

    public static void main(String[] args) {
    Scanner sc = new Scanner(System.in);
    String A = sc.nextLine();
    String B = sc.nextLine();
    char[] arrA = A.toCharArray();
    char[] arrB = B.toCharArray();


    System.out.println(isBSubStringOfA(arrA, arrB)? "YES" : "NO");
    }

    private static boolean isBSubStringOfA(char[] arrA, char[] arrB) {
    if (arrB.length > arrA.length) return false;

    for (int i=0; i<arrA.length-arrB.length+1; i++){
    boolean isAllSame = arrA[i] == arrB[0];
    for (int j=0; j<arrB.length; j++){
    isAllSame &= (arrA[j+i] == arrB[j]);
    }
    if (isAllSame) return true;
    }

    return false;
    }


    }


    'Basic' 카테고리의 다른 글

    7-7: 문자열 정렬  (0) 2018.10.25
    7-5: 문자열 압축  (0) 2018.10.25
    7-4: 팰린드롬 조사  (0) 2018.10.25
    7-3: 문자열 뒤집기  (0) 2018.10.25
    7-2: 대소문자 변환  (0) 2018.10.25
Designed by Tistory.