Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- let n = +gets();
- let matrix = [];
- //създаваме си празна матрица
- for(let i = 0; i < n; i++){
- matrix[i] = [];
- }
- // console.log(matrix);
- // ┌─────────┬────┬────┬────┬────┬───┐
- // │ (index) │ 0 │ 1 │ 2 │ 3 │ 4 │
- // ├─────────┼────┼────┼────┼────┼───┤
- // │ 0 │ 1 │ 2 │ 3 │ 4 │ 5 │
- // │ 1 │ 16 │ 17 │ 18 │ 19 │ 6 │
- // │ 2 │ 15 │ 24 │ 25 │ 20 │ 7 │
- // │ 3 │ 14 │ 23 │ 22 │ 21 │ 8 │
- // │ 4 │ 13 │ 12 │ 11 │ 10 │ 9 │
- // └─────────┴────┴────┴────┴────┴───┘
- let counter = 1;
- let startCol = 0;
- let endCol = n - 1;
- let startRow = 0;
- let endRow = n - 1;
- while(startCol <= endCol && startRow <= endRow){ //вървим надясно
- for(let i = startCol; i <= endCol; i++){
- matrix[startRow][i] = counter;
- counter++;
- }
- startRow++;
- for(let i = startRow; i <=endRow; i++){ //вървим надолу
- matrix[i][endCol] = counter;
- counter++;
- }
- endCol--;
- for(let i = endCol; i >= startCol; i--){ //вървим наляво
- matrix[endRow][i] = counter;
- counter++;
- }
- endRow--
- for(let i = endRow; i >= startRow; i--){ //вървим нагоре
- matrix[i][startCol] = counter;
- counter++;
- }
- startCol++;
- }
- for(let i = 0; i < n; i++){
- let output = '';
- output += matrix[i].join(' ');
- console.log(output);
- }
- // console.log(matrix);
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement