可逆矩阵生成

#include<stdio.h>
#include<string.h>
#include<stdlib.h>
int main()
{
	freopen("matrix.txt","w",stdout);
	int A[16][16],B[16][16],C[16][16];
	memset(A,0,sizeof(A));
	memset(B,0,sizeof(B));
	memset(C,0,sizeof(C));
	for (int i=0;i<16;i++)
	{
		A[i][i]=1;
		B[i][i]=1;
	}
	for (int i=0;i<5626596;i++) rand();
	int opa[10000],opb[10000],opc[10000];
	for (int i=0;i<100;i++)
	{
		opa[i]=rand()%16;
		opb[i]=rand()%16;
		if (opa[i]==opb[i]) continue;
		opc[i]=rand()%11-5;
		if (opc[i]==0) continue;
		for (int j=0;j<16;j++)
			A[opa[i]][j]+=A[opb[i]][j]*opc[i];
	}
	for (int i=0;i<16;i++)
	{
		for (int j=0;j<16;j++)
			printf("%d,",A[i][j]);
		printf("\n");
	}
	printf("=============================================\n");
	for (int i=99;i>=0;i--)
	{
		if (opc[i]==0 || opa[i]==opb[i]) continue;
		for (int j=0;j<16;j++)
			B[opa[i]][j]-=B[opb[i]][j]*opc[i];
	}
	for (int i=0;i<16;i++)
	{
		for (int j=0;j<16;j++)
			printf("%d,",B[i][j]);
		printf("\n");
	}
	printf("=============================================\n");
	for (int i=0;i<16;i++)
		for (int j=0;j<16;j++)
			for (int k=0;k<16;k++)
				C[i][j]+=A[i][k]*B[k][j];
	for (int i=0;i<16;i++)
	{
		for (int j=0;j<16;j++)
			printf("%d,",C[i][j]);
		printf("\n");
	}
	printf("=============================================\n");
	fclose(stdout);
	return 0;
}

  

时间: 2024-10-11 07:14:27

可逆矩阵生成的相关文章

使用MyBatis Generator自动生成实体、mapper和dao层

通过MyBatis Generator可以自动生成实体.mapper和dao层,记录一下怎么用的. 主要步骤: 关于mybatis从数据库反向生成实体.DAO.mapper: 参考文章:http://www.cnblogs.com/wangkeai/p/6934683.html第一种方式:main方法运行(推荐) 1.在pom.xml中加入插件依赖: 2.写mbgConfiguration.xml文件,jdbc.properties文件 3.写/SSM/src/main/java/main/Ge

iOS app打包 -- 生成ipa测试包 步骤详解

最近有小伙伴问我如何打成ipa包分发给测试人员 , 虽然现在网上的教程很多,但是也很杂, 没有一个比较完整的讲解. 利用工作之余, 就说一下如何生成ipa包?共分为两种方法. 第一种方法: 1) 至于配置发布证书和AdHoc描述文件, 就不再累述, 下载下来双击安装即可.(ps: 生成AdHoc描述文件的时候要注意勾选所有的设备, 只有被描述文件包含的设备才能进行相应的测试. 如果是企业账号的话则不需要添加设备的udid). 2) 接下来开始配置xCode里的工作(包括发布证书和描述文件), 注

微信生成二维码 只需一个网址即刻 还有jquery生成二维码

<div class="orderDetails-info"> <img src="http://qr.topscan.com/api.php?text=http://123.net/index.php?s=/Home/Index/yanzheng/mai/{$dange.id}" style="width: 5rem; margin-bottom: 1rem;" > </div> http://qr.tops

C# 动态生成WebService,无需添加引用

C#项目调用WebService是很常见的现象,但一旦修改链接地址就需要重新更新引用很是麻烦,这里跟大家分享一个通过地址,无需添加引用动态生成Webservice的小方法 方法类: 1 using System; 2 using System.Collections.Generic; 3 using System.Linq; 4 using System.Text; 5 using System.ServiceModel; 6 using System.ServiceModel.Channels

seam2.2根据已有数据库(postgresql)生成项目

首先呢,这是我向同哥请教的一个文题,然后同哥把整个过程给我解答了一遍,谢谢同哥的乃森及引针啦---- seam2.2根据已有数据库(postgresql)生成项目 一,建数据库 进入pgAdmin新建一个数据库然后用eclipse的插件ErMaster导出sql或者是自己手写sql新建数据表 ,这里新建了一个名为test的数据库 里面有两个表,member和department,为多对一的关系,注意不要忘了设置主键 二,进入seam目录运行 ./seam setup ./seam create-

AD 脚本kixtart运用之六(outlook邮件批量生成签名)

基于上一编文章http://windyma.blog.51cto.com/661702/1967071里的设置 我们在Function.kix添加如下内容(备注:此outlook签名function来自网上,经过我比较大的修改): ---------------- Function GenerateOutlookSig($SignatureFileName) $EmailAccountName = @WUSERID ;----获取outlook配置profile名字(如果有多个profile名字

thinkphp U方法生成链接没有host

今天将自己代码传到线上服务器,页面上用到很多thinkphp U() 方法生成的链接.本地测试没啥问题,到线上发现链接生成的不对,每个都没有了host 每个链接多个index,然后查看tp的U方法: $url    =   __APP__.'/'.($module?$module.MODULE_PATHINFO_DEPR:'').implode($depr,array_reverse($var)); 是因为__APP__这里的原因,然后找到__APP__赋值的地方: define('__APP_

利用letsencrypte生成证书时,create virtual environment失败

./letsencrypt-auto certonly --standalone 利用letsencrypt生成证书时 ,出现下面错误提示 0 upgraded, 0 newly installed, 0 to remove and 6 not upgraded. Creating virtual environment... Traceback (most recent call last): File "/usr/lib/python3/dist-packages/virtualenv.py

使用函数方式生成UUID

1.默认生成的UUID是有 "-" 分隔符的 例如: public static void main(String[] args){ String uuid = UUID.randomUUID().toString(); System.out.println(uuid); } //打印结果:c91e4624-96fb-4fc4-bcc1-8a597a3f53b8 2.使用replace()方法替换  "-"  符号 public static void main(S