|
此文章由 Grange 原创或转贴,不代表本站立场和观点,版权归 oursteps.com.au 和作者 Grange 所有!转贴必须注明作者、出处和本声明,并保持内容完整
本帖最后由 Grange 于 2022-2-22 21:09 编辑
用最长的那行算n?
楼上已经说了,一直读到EOF,input的row count就是n。
不会Java,用python试了一下:
- [root@ryzen ~]# cat vertices.py
- #!/usr/bin/env python3
- import sys
- def main():
- filename = sys.argv[1]
- n = 0
- vertices = []
- with open(filename) as f:
- for r in f:
- l = r[:-1].split(' ')
- for i in l[1:]:
- vertices.append((int(l[0]), int(i)))
- n += 1
- matrix = [[0] * n for i in range(n)]
- for r,c in vertices:
- matrix[r][c] = 1
- for r in matrix:
- print(r)
- if __name__ == "__main__":
- main()
复制代码
- [root@ryzen ~]# cat test1
- 0 1 2 3 4
- 1 0 3
- 2 0 3 4
- 3 0 1 2
- 4 0 2
- [root@ryzen ~]# ./vertices.py test1
- [0, 1, 1, 1, 1]
- [1, 0, 0, 1, 0]
- [1, 0, 0, 1, 1]
- [1, 1, 1, 0, 0]
- [1, 0, 1, 0, 0]
- [root@ryzen ~]# cat test2
- 0 1 2
- 1 0 2
- 2 0 1
- [root@ryzen ~]# ./vertices.py test2
- [0, 1, 1]
- [1, 0, 1]
- [1, 1, 0]
复制代码 |
|