티스토리 뷰

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

 

24524번: 아름다운 문자열

첫째 줄과 둘째 줄에 영어 소문자로만 이루어진 문자열 $S$와 $T$가 각각 주어진다. $(1\leq \left|S \right|\leq 1\,000\,000;$ $1\leq \left|T \right|\leq 26;$ $\left|T \right|\leq \left|S \right|)$ $T$의 모든 문자는 서로 다

www.acmicpc.net

//https://www.acmicpc.net/problem/24524
const [S, T] = require('fs').readFileSync('./dev/stdin').toString().trim().split('\n');
const A = new Array(T.length).fill(0);
for (let i = 0; i < S.length; i++) {
	const s = S[i];
	if (!T.includes(s)) continue;
	if (s == T[0]) A[0] += 1;
	else {
		const index = T.indexOf(s);
		if (A[index - 1] > 0) {
			A[index - 1] -= 1;
			A[index] += 1;
		}
	}
}

console.log(A[A.length - 1]);
728x90
공지사항
최근에 올라온 글
최근에 달린 댓글
Total
Today
Yesterday
링크
«   2025/01   »
1 2 3 4
5 6 7 8 9 10 11
12 13 14 15 16 17 18
19 20 21 22 23 24 25
26 27 28 29 30 31
글 보관함