HDU4920 Matrix multiplication 矩阵
不要问窝 为什么过了> <
窝也不造为什么就过了
说是%3变成稀疏矩阵
可是随便YY个案例都会超时。。
。
看来数据是随机的诶
#include <stdio.h>
#include <string.h>
#include <stdlib.h>
#include <limits.h>
#include <malloc.h>
#include <ctype.h>
#include <math.h>
#include <string>
#include<iostream>
#include <algorithm>
using namespace std;
typedef long long LL;
#define MAXN 100*111
#include <queue>
#include <vector>
#define IN freopen("in.txt","r",stdin);
#define OUT freopen("out.txt","w",stdout);
int Scan()
{
int x;
char c;
while((c=getchar())<'0' || c>'9') ;
x=c-'0' ;
while((c=getchar())>='0' && c<='9')
x+=c-'0';
x%=3 ;
return x;
}
int a[888][880],b[880][880],c[880][880];
int main()
{
int n;
IN;
while(scanf("%d",&n)!=EOF)
{
memset(c,0,sizeof(c));
for(int i=0; i<n; i++)
for(int j=0; j<n; j++)
a[i][j]=Scan();
for(int i=0; i<n; i++)
{
for(int j=0; j<n; j++)
{
b[i][j]=Scan();
}
}
for(int i=0; i<n; i++)
for(int k=0; k<n; k++)
{
if(a[i][k]==1)
for (int j=0; j<n ; j++)
c[i][j]+=b[k][j];
else if(a[i][k]==2)
for(int j=0; j<n; j++ )
c[i][j]+=(b[k][j]<<1);
}
for(int i=0; i<n; i++)
for(int j=0; j<n; j++)
{
printf("%d%c",c[i][j]%3,j==n-1?'\n':' ');
}
}
return 0;
}
HDU4920 Matrix multiplication 矩阵的更多相关文章
- hdu4920 Matrix multiplication 模3矩阵乘法
hdu4920 Matrix multiplication Time Limit: 4000/2000 MS (Java/Others) Memory Limit: 131072/131072 ...
- HDU-4920 Matrix multiplication
矩阵相乘,采用一行的去访问,比采用一列访问时间更短,根据数组是一行去储存的.神奇小代码. Matrix multiplication Time Limit: 4000/2000 MS (Java/Ot ...
- HDU 4920 Matrix multiplication(矩阵相乘)
各种TEL,233啊.没想到是处理掉0的情况就能够过啊.一直以为会有极端数据.没想到居然是这种啊..在网上看到了一个AC的奇妙的代码,经典的矩阵乘法,仅仅只是把最内层的枚举,移到外面就过了啊...有点 ...
- Poj 3318 Matrix Multiplication( 矩阵压缩)
Matrix Multiplication Time Limit: 2000MS Memory Limit: 65536K Total Submissions: 18928 Accepted: ...
- HDU 4920 Matrix multiplication 矩阵相乘。稀疏矩阵
Matrix multiplication Time Limit: 4000/2000 MS (Java/Others) Memory Limit: 131072/131072 K (Java/ ...
- POJ 3318 Matrix Multiplication(矩阵乘法)
题目链接 题意 : 给你三个n维矩阵,让你判断A*B是否等于C. 思路 :优化将二维转化成一维的.随机生成一个一维向量d,使得A*(B*d)=C*d,多次生成多次测试即可使错误概率大大减小. #inc ...
- 【bitset】hdu4920 Matrix multiplication
先把两个矩阵全都mod3. S[i][j][k]表示第i(0/1)个矩阵的行/列的第k位是不是j(1/2). 然后如果某两个矩乘对应位上为1.1,乘出来是1: 1.2:2: 2.1:2: 2.2:1. ...
- 矩阵乘法 --- hdu 4920 : Matrix multiplication
Matrix multiplication Time Limit: 4000/2000 MS (Java/Others) Memory Limit: 131072/131072 K (Java/ ...
- UVa 442 Matrix Chain Multiplication(矩阵链,模拟栈)
意甲冠军 由于矩阵乘法计算链表达的数量,需要的计算 后的电流等于行的矩阵的矩阵的列数 他们乘足够的人才 非法输出error 输入是严格合法的 即使仅仅有两个相乘也会用括号括起来 并且括号中 ...
随机推荐
- spring boot简单入门
1.创建mave工程(jar) 2.pom文件引入依赖 <!--引入父依赖--> <parent> <groupId>org.springframework.boo ...
- Python开发基础-Day11内置函数补充、匿名函数、递归函数
内置函数补充 python divmod()函数:把除数和余数运算结果结合起来,返回一个包含商和余数的元组(a // b, a % b) 语法: divmod(a, b) #a.b为数字,a为除数,b ...
- 有的系统区apk需要对其系统签名,才能正常使用。
韩梦飞沙 韩亚飞 313134555@qq.com yue31313 han_meng_fei_sha 向方案公司索要platform.x509.pem 和platform.pk8这两个文件. ...
- SQLSEVER 中的那些键和约束
SQL Server中有五种约束类型,分别是 PRIMARY KEY约束.FOREIGN KEY约束.UNIQUE约束.DEFAULT约束.和CHECK约束.查看或者创建约束都要使用到 Microso ...
- [COCI2011-2012#7] KAMPANJA
这个题似曾相识啊,以前是用搜索剪枝+0/1边权bfs做的(题面可以参照上一篇这个题的博客). 有一类问题就是求 包含若干关键点的最小强联通子图大小是多少. 如果关键点数量是变量,那么就是NP问题了.. ...
- [NOI 2011][BZOJ 2434] 阿狸的打字机
传送门 AC自动机 + 树状数组 建成AC自动机后,设end[i]为第i个串的末尾在Trie树上的节点. 可以发现,对于一个询问(x,y),ans等于Trie树上root到end[y]这条链上fail ...
- Problem F: 尖兵
#include<stdio.h> struct man{ ]; int grade; }; int main(void) { int t; int i,j,n; ],max; scanf ...
- PHP数组和数据结构(下)未完。。。。
1.数组的遍历 (1)each(): 接受一个数组作为参数,返回数组中当前元素的键/值对,并向后移动数组指针到下一个元素的位置 键/值对被返回为带有四个元素的关联和索引混合的数组,键名分别为0,1,k ...
- 使用MailKit收发邮件
.Net BCL库中对于邮件的支持只有SmtpClient一个,它只能进行简单的邮件的发送操作,并且不支持POP3和SMTP,无法接收邮件,用起来有诸多不便. 今天看到园子里有文章(使用 MimeKi ...
- SpringMVC中拦截器的使用
什么是拦截器 拦截器通常一般指的是通过拦截从浏览器发往服务器的一些请求来完成某些功能的一段程序代码一般在一个请求发生之前,发生时,发生后我们都可以对请求进行拦截 拦截器可以做什么 拦截器可以用于权限验 ...