티스토리 뷰

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

 

2866번: 문자열 잘라내기

첫 번째 줄에는 테이블의 행의 개수와 열의 개수인 R과 C가 주어진다. (2 ≤ R, C ≤ 1000) 이후 R줄에 걸쳐서 C개의 알파벳 소문자가 주어진다. 가장 처음에 주어지는 테이블에는 열을 읽어서 문자

www.acmicpc.net

const input = require('fs').readFileSync('./dev/stdin').toString().trim().split('\n');
const [N, M] = input.shift().split(' ').map(Number);
const strings = input.map((v) => v.trim().split(''));
const set = new Set();
const sample = [];
for (let i = 0; i < M; i++) {
	let str = '';
	for (let j = 0; j < N; j++) {
		str += strings[j][i];
	}
	sample.push(str);
}
let cnt = 0;
while (true) {
	for (let i = 0; i < M; i++) {
		const s = sample[i].slice(cnt);
		if (!set.has(s)) {
			set.add(s);
		} else {
			console.log(cnt - 1);
			process.exit();
		}
	}
	cnt++;
}
728x90
공지사항
최근에 올라온 글
최근에 달린 댓글
Total
Today
Yesterday
링크
«   2024/10   »
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
글 보관함