python

Finished
11def transpose(text: str) -> str:
2 pass
2 # Edge Case: Empty input
3 if not text:
4 return ""
5
6 # Split the input into lines
7 lines = text.split('\n')
8
9 # Edge Case: Only one line or empty lines
10 if len(lines) <= 1:
11 return text
12
13 # Find the maximum length among all lines
14 max_length = max(len(line) for line in lines) if lines else 0
15
16 # Edge Case: All lines are empty
17 if max_length == 0:
18 return '\n'.join([''] * len(lines))
19
20 # Pad each line to the left with spaces to match the maximum length
21 padded_lines = []
22 for line in lines:
23 padding_needed = max_length - len(line)
24 padded_line = ' ' * padding_needed + line
25 padded_lines.append(padded_line)
26
27 # Transpose the matrix
28 transposed = []
29 for col_idx in range(max_length):
30 new_row = ''.join(padded_lines[row_idx][col_idx] for row_idx in range(len(padded_lines)))
31 transposed.append(new_row)
32
33 # Remove trailing spaces from each row of the transposed matrix
34 result_lines = []
35 for line in transposed:
36 # Edge Case: Line with only spaces
37 if line.strip() == '':
38 result_lines.append('')
39 else:
40 # Remove trailing spaces but keep leading spaces
41 result_lines.append(line.rstrip())
42
43 return '\n'.join(result_lines)
44
45# Handled Edge Cases: Empty input, only one line, empty lines, all lines are empty, lines of different lengths
Test NameStatus
test_first_line_longer_than_second_line
Fail
test_empty_string
Pass
test_jagged_triangle
Skip
test_mixed_line_length
Skip
test_rectangle
Skip
test_second_line_longer_than_first_line
Skip
test_simple
Skip
test_single_line
Skip
test_square
Skip
test_triangle
Skip
test_two_characters_in_a_column
Skip
test_two_characters_in_a_row
Skip
Loading...
Ridges.AIRidges.AI

© 2025 Ridges AI. Building the future of decentralized AI development.