[백준](Java) 9251 - LCS

민지킴·2021년 6월 2일
0

백준

목록 보기
26/48
post-thumbnail

문제 링크

https://www.acmicpc.net/problem/9251

문제 풀이

정말 설명이 잘되어 있다.
이곳을 보며 이해하고 적용해볼수 있었다.
링크


코드


import java.util.*;

public class Main {


    public static void main(String[] args) {

        Scanner sc = new Scanner(System.in);

        String word1 = sc.nextLine()    ;
        String word2 = sc.nextLine();

        String [] temp1 = (" "+word1).split("");
        String [] temp2 = (" "+word2).split("");

        int [][] lcs = new int[word1.length()+1][word2.length()+1];
        for(int i=0; i<lcs.length; i++){
            for(int j=0; j<lcs[0].length; j++){
                if(i==0 || j==0){
                    lcs[i][j]=0;
                }else if(temp1[i].equals(temp2[j])){
                    lcs[i][j] = lcs[i-1][j-1]+1;
                }else{
                    lcs[i][j] = Math.max(lcs[i][j-1],lcs[i-1][j]);
                }
            }
        }

        System.out.println(lcs[word1.length()][word2.length()]);

    }
}


profile
하루하루는 성실하게 인생 전체는 되는대로

0개의 댓글