int matrix[size][size];
использует автоматическую память, которую вы просто исчерпали из-за элементов 10000 * 10000
в вашей матрице. Если вам нужна такая большая матрица, вы должны использовать динамическую память или контейнер, который использует динамическую память, например, std::vector
:
vector<vector<int>> matrix(size, vector<int>(size, 0));