使用协程和通道在二维矩阵中进行并行搜索
Go
Hard
goroutines
任务 «使用协程和通道在二维矩阵中进行并行搜索»
给定一个整数矩形矩阵。需要实现一个并行算法,用于查找指定数字在矩阵中出现的次数。该算法应将矩阵按行划分为N个相等的部分,启动N个协程并行处理每个部分,通过通道收集结果,并输出总数。如果未找到该数字,则输出0。请使用sync.WaitGroup来同步协程。
输入格式
第一行:两个整数 M 和 N(1 ≤ M, N ≤ 1000)——矩阵的尺寸。接下来的 M 行:N 个整数——矩阵的元素。最后一行:一个整数 X——要查找的值。
输出格式
一个整数——矩阵中X出现的次数。
示例
示例 1
输入
3 3
1 2 3
4 5 6
7 8 9
5
输出
1
示例 2
输入
2 4
1 2 3 4
2 3 4 5
10
输出
0
示例 3
输入
0
2
next
next
reset
next
next
输出
0
2
0
2
示例 4
输入
3
2 3 4
输出
12
main.go