Hướng dẫn stdarray python
Ngày đăng:
20/09/2022
Trả lời:
0
Lượt xem:
157
import stdio def create1D(length, value=None): return [value] * length def create2D(rowCount, colCount, value=None): a = [None] * rowCount for row in range(rowCount): a[row] = [value] * colCount return a def write1D(a): length = len(a) stdio.writeln(length) for i in range(length): element = a[i] if isinstance(element, bool): if element == True: stdio.write(1) else: stdio.write(0) else: stdio.write(element) stdio.write(' ') stdio.writeln() def write2D(a): rowCount = len(a) colCount = len(a[0]) stdio.writeln(str(rowCount) + ' ' + str(colCount)) for row in range(rowCount): for col in range(colCount): element = a[row][col] if isinstance(element, bool): if element == True: stdio.write(1) else: stdio.write(0) else: stdio.write(element) stdio.write(' ') stdio.writeln() def readInt1D(): count = stdio.readInt() a = create1D(count, None) for i in range(count): a[i] = stdio.readInt() return a def readInt2D(): rowCount = stdio.readInt() colCount = stdio.readInt() a = create2D(rowCount, colCount, 0) for row in range(rowCount): for col in range(colCount): a[row][col] = stdio.readInt() return a def readFloat1D(): count = stdio.readInt() a = create1D(count, None) for i in range(count): a[i] = stdio.readFloat() return a def readFloat2D(): rowCount = stdio.readInt() colCount = stdio.readInt() a = create2D(rowCount, colCount, 0.0) for row in range(rowCount): for col in range(colCount): a[row][col] = stdio.readFloat() return a def readBool1D(): count = stdio.readInt() a = create1D(count, None) for i in range(count): a[i] = stdio.readBool() return a def readBool2D(): rowCount = stdio.readInt() colCount = stdio.readInt() a = create2D(rowCount, colCount, False) for row in range(rowCount): for col in range(colCount): a[row][col] = stdio.readBool() return a def _main(): write2D(readFloat2D()) write2D(readBool2D()) if __name__ == '__main__': _main() |