HDU4920妥妥的暴力

2015-07-20 17:59:07 · 作者: · 浏览: 3

原题http://acm.hdu.edu.cn/showproblem.php?pid=4920

Matrix multiplication

Time Limit: 4000/2000 MS (Java/Others) Memory Limit: 131072/131072 K (Java/Others)
Total Submission(s): 848 Accepted Submission(s): 339


Problem Description Given two matrices A and B of size n×n, find the product of them.

bobo hates big integers. So you are only asked to find the result modulo 3.


Input The input consists of several tests. For each tests:

The first line contains n (1≤n≤800). Each of the following n lines contain n integers -- the description of the matrix A. The j-th integer in the i-th line equals A ij. The next n lines describe the matrix B in similar format (0≤A ij,B ij≤10 9).


Output For each tests:

Print n lines. Each of them contain n integers -- the matrix A×B in similar format.


Sample Input
1
0
1
2
0 1
2 3
4 5
6 7


Sample Output
0
0 1
2 1


Author Xiaoxu Guo (ftiasch)


Source 2014 Multi-University Training Contest 5


Recommend We have carefully selected several similar problems for you: 4919 4918 4917 4916 4915
//开始的时候还以为这题要用到什么高深的算法。后来发现很多人过了,估计就是小技巧了
//首先。乘法的运算时间要比加法多。所以能避免乘法,尽量优化掉。
//经过这题,发现C++比G++跑的要更快,同样的代码差了差不多0.4秒。比赛的时候就是由于交了G++T了好多次
//最后,说一句,骚年,虽然暴力不是万能的。但是没有加上小技巧的暴力是万万不能的。
#include 
  
   
#include 
   
     #include 
    
      #include 
     
       #include 
      
        #include 
       
         #include 
        
          #include 
         
           #include 
          
            #include 
           
             #include 
            
              #include 
             
               #include 
              
                #include 
                #include 
                
                  using namespace std; #define Max 800 + 5 int a[Max][Max]; int b[Max][Max]; int c[Max][Max]; int main(){ int n,i,j; while(~scanf("%d",&n)){ memset(a,0,sizeof(a)); memset(b,0,sizeof(b)); memset(c,0,sizeof(c)); for(i=0;i