zoukankan      html  css  js  c++  java
  • bzoj2396 神奇的矩阵(随机化)

    Time Limit: 5 Sec  Memory Limit: 512 MB

        给出三个行数和列数均为N的矩阵A、B、C,判断A*B=C是否成立。

        题目可能包含若干组数据。
        对于每组数据,第一行一个数N,接下来给出三个N*N的矩阵,依次为A、B、C三个矩阵。

        对于每组数据,若A*B=C成立,则输出Yes,否则No。每个答案占一行。

    Sample Input

    1
    2
    2
    100

    Sample Output

    No

    HINT

        对于90%的数据,N不超过100;

        对于100%的数据,N不超过1000,矩阵中的数字大于等于0小于1000,数据组数不超过5组。


    poj原题......就是改了下数据范围

    详见:blog:poj3318 Matrix Multiplication

    根据这题的数据范围$O(n^2),n<=1000$,每组大概判断17次,错误率$1/2^{17}$

    #include<iostream>
    #include<cstdio>
    #include<cstring>
    #include<cstdlib>
    #define rint register int
    using namespace std;
    #define N 1005
    int i,j,k,n,a[N][N],b[N][N],c[N][N],d[N],e[N],f[N];
    int main(){
        srand(19260817);
        while(scanf("%d",&n)!=EOF){
            for(i=1;i<=n;++i)
                for(j=1;j<=n;++j)
                    scanf("%d",&a[i][j]);
            for(i=1;i<=n;++i)
                for(j=1;j<=n;++j)
                    scanf("%d",&b[i][j]);
            for(i=1;i<=n;++i)
                for(j=1;j<=n;++j)
                    scanf("%d",&c[i][j]);
            for(k=1;k<=17;++k){
                for(i=1;i<=n;++i) d[i]=rand()&1;
                for(e[i=1]=0;i<=n;e[++i]=0)
                    for(j=1;j<=n;++j)
                        e[i]+=c[i][j]*d[j];
                for(f[i=1]=0;i<=n;f[++i]=0)
                    for(j=1;j<=n;++j)
                        f[i]+=b[i][j]*d[j];
                for(i=1;i<=n;++i) d[i]=f[i];
                for(f[i=1]=0;i<=n;f[++i]=0)
                    for(j=1;j<=n;++j)
                        f[i]+=a[i][j]*d[j];
                for(i=1;e[i]==f[i]&&i<=n;++i);
                if(i<=n) break;
            }puts(k>17?"Yes":"No");
        }return 0;
    }
  • 相关阅读:
    note 11 字典
    note10 元组
    hibernate环境搭建及操作
    JAVA中解决Filter过滤掉css,js,图片文件等问题
    过滤器
    MySQL存储过程(转)
    用java调用oracle存储过程总结(转)
    Oracle分页查询语句的写法(转)
    数据访问类的封装
    事务的特性及事务的隔离级别(转)
  • 原文地址:https://www.cnblogs.com/kafuuchino/p/10837452.html
Copyright © 2011-2022 走看看