Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- function ok(matrix: string[][], len: int, n: int, m: int) -> bool {
- let used:{string : int}={};
- for(let i = 0; i < m; i += 1) {
- let cur: string = "";
- for(let j = len; j < n; j += 1) {
- cur += matrix[j][i];
- }
- if(used.contains(cur)) {
- return false;
- }
- else {
- used[cur] = 1;
- }
- }
- return true;
- }
- function solve(input: string) -> string {
- let line = input.split("\n\n");
- let siz = line[0].split(" ");
- let n: int = int(siz[0]);
- let m: int = int(siz[1]);
- let matrix: string[][] = [];
- for(let i = 1; i <= n; i += 1) {
- matrix.push([]);
- for(let j = 0; j < m; j += 1) {
- matrix[i - 1].push(line[i][j]);
- }
- }
- let l: int = 0;
- let r: int = n;
- while(r - l > 1) {
- let mid: int = (r + l) / 2;
- if(ok(matrix, mid, n, m)) {
- l = mid;
- }
- else {
- r = mid;
- }
- }
- return string(l);
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement