亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關于我們
? 蟲蟲下載站

?? main.cpp

?? 浙江工商大學 計算機與信息工程學院實驗報告
?? CPP
字號:
#include <cstdlib>
#include <iostream>
using namespace std;

#define Size 128
typedef struct
{
	int row;
	int col;
	int value;
}MATRIX;

int com(const void *m1, const void *m2)
{
	if ((*(MATRIX *)m1).row != (*(MATRIX *)m2).row)
		return (*(MATRIX *)m1).row - (*(MATRIX *)m2).row;
	else
		return (*(MATRIX *)m1).col - (*(MATRIX *)m2).col;
}

class Matrix
{
private:
	int cmp(MATRIX m1, MATRIX m2)
	{
		if (m1.row != m2.row)
			return m1.row - m2.row;
		else
			return m1.col - m2.col;
	}

	void fast_transpose(MATRIX *m)
	{
		for (int i = 0 ; i <= m[0].value ; i++)
			m[i].col ^= m[i].row ^= m[i].col ^= m[i].row;
		qsort(m + 1, m[0].value, sizeof(MATRIX), com);
	}
public:
	bool change(int from[][Size], MATRIX *to, int row, int col)
	{
		to[0].row = row;
		to[0].col = col;
		to[0].value = 0;
		
		for (int i = 0 ; i < row ; i++)
			for (int j = 0 ; j < col ; j++)
			{
				if (from[i][j])
				{
					to[++to[0].value].row = i;
					to[to[0].value].col = j;
					to[to[0].value].value = from[i][j];
				}
			}
			
			return true;
	}
	
	bool mat_add(MATRIX *m1, MATRIX *m2, MATRIX *sum)
	{
		int i, j;
		int tmp;
		
		if (m1[0].col != m2[0].col || m1[0].row != m2[0].row)
			return false;
		
		sum[0].row = m1[0].row;
		sum[0].col = m1[0].col;
		sum[0].value = 0;
		for (i = j = 1 ; i <= m1[0].value && j <= m2[0].value;)
		{
			tmp = cmp(m1[i], m2[j]);
			if (tmp == 0 && m1[i].value + m2[j].value)
			{
				sum[++sum[0].value].col = m1[i].col;
				sum[sum[0].value].row = m1[i].row;
				sum[sum[0].value].value = m1[i].value + m2[j].value;
				i++;j++;
			}
			else if (tmp > 0)
			{
				sum[++sum[0].value].col = m2[j].col;
				sum[sum[0].value].row = m2[j].row;
				sum[sum[0].value].value = m2[j].value;
				j++;
			}
			else
			{
				sum[++sum[0].value].col = m1[i].col;
				sum[sum[0].value].row = m1[i].row;
				sum[sum[0].value].value = m1[i].value;
				i++;
			}
		}
		while (i <= m1[0].value)
		{
			sum[++sum[0].value].col = m1[i].col;
			sum[sum[0].value].row = m1[i].row;
			sum[sum[0].value].value = m1[i].value;
			i++;
		}
		while (j <= m2[0].value)
		{
			sum[++sum[0].value].col = m2[j].col;
			sum[sum[0].value].row = m2[j].row;
			sum[sum[0].value].value = m2[j].value;
			j++;
		}
		
		return true;
	}

	bool mat_mul(MATRIX *m1, MATRIX *m2, MATRIX *sum)
	{
		int i, j, r, c, row, tol;
		int row1[Size] = {1, 1}, row2[Size] = {1, 1};
		
		if (m1[0].col != m2[0].row)
			return false;

		fast_transpose(m2);
		sum[0].row = m1[0].row;
		sum[0].col = m2[0].row;
		sum[0].value = 0;
		row = m1[1].row;
		for (i = 2 ; i <= m1[0].value ; i++)
		{
			if (row != m1[i].row)
			{
				row1[++row1[0]] = i;
				row = m1[i].row;
			}
		}
		row1[++row1[0]] = m1[0].value + 1;
		row = m2[1].row;
		for (i = 2 ; i <= m2[0].value ; i++)
		{
			if (row != m2[i].row)
			{
				row2[++row2[0]] = i;
				row = m2[i].row;
			}
		}
		row2[++row2[0]] = m2[0].value + 1;

		for (i = 1 ; i < row1[0] ; i++)
		{
			for (j = 1 ; j <row2[0] ; j++)
			{
				tol = 0;
				for (r = row2[j], c = row1[i]; r < row2[j + 1] && c < row1[i + 1];)
				{
					if (m1[c].col < m2[r].col)
						c++;
					else if (m1[c].col == m2[r].col)
						tol += m1[c++].value * m2[r++].value;
					else
						r++;
				}
				if (tol)
				{
					sum[++sum[0].value].row = m1[row1[i]].row;
					sum[sum[0].value].col = m2[row2[j]].row;
					sum[sum[0].value].value = tol;
				}
			}
		}

		return true;
	}
	
	void display(MATRIX *to)
	{
		for (int i = 1 ; i <= to[0].value ; i++)
			cout << to[i].row << ' '
			<< to[i].col << ' '
			<< to[i].value << endl;
	}
};

int main(void)
{
	Matrix mat;
	MATRIX m[Size * Size];
	MATRIX n[Size * Size];
	MATRIX s[Size * Size];
	int a[Size][Size];
	
	for (int i = 0 ; i < 3 ; i++)
		for (int j = 0 ; j < 3 ; j++)
			a[i][j] = rand() % 4;
	mat.change(a, m, 3, 3);
	mat.display(m);
	cout << endl;

	for (i = 0 ; i < 3 ; i++)
		for (int j = 0 ; j < 3 ; j++)
			a[i][j] = rand() % 4;
	mat.change(a, n, 3, 3);
	mat.display(n);
	cout << endl;

	mat.mat_mul(m, n, s);
	mat.display(s);
	cout << endl;

	return 0;
}

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
国产精品久久久久久亚洲伦| 日本一区二区在线不卡| 夜夜揉揉日日人人青青一国产精品| 99久久久国产精品| 亚洲免费观看高清完整版在线观看| 欧美性一级生活| 国产综合久久久久久久久久久久| 国产精品国产三级国产有无不卡| 日韩一级片网站| av中文字幕不卡| 五月天一区二区三区| 精品久久久久一区| av资源站一区| 99re热视频精品| 91高清视频免费看| 成人禁用看黄a在线| 爽好多水快深点欧美视频| 久久综合久久综合亚洲| 色狠狠综合天天综合综合| 91福利精品第一导航| 欧美午夜精品久久久久久孕妇| 日本高清视频一区二区| 欧美日韩激情在线| 91一区在线观看| 国产精品一二三区在线| 日韩高清中文字幕一区| 亚洲视频1区2区| 国产欧美综合在线观看第十页| 欧美高清在线一区| 欧美成人aa大片| 国产亚洲欧美中文| 久久久精品免费网站| 日韩亚洲电影在线| 久久久久免费观看| 亚洲精品国产精品乱码不99 | 久久久久久99精品| 久久久久久久精| 一区二区三区四区不卡在线| 日韩精品1区2区3区| 成人免费毛片片v| 国产河南妇女毛片精品久久久| 日本视频一区二区| www.欧美日韩| 日韩午夜av电影| 国产精品盗摄一区二区三区| 性欧美疯狂xxxxbbbb| 亚洲动漫第一页| 亚洲国产aⅴ天堂久久| 精品亚洲porn| 日欧美一区二区| 国产69精品久久777的优势| 成人午夜激情视频| 欧美精品在线观看播放| 日韩欧美卡一卡二| 久久免费国产精品| 日韩av一二三| 色久综合一二码| 亚洲欧美在线观看| 亚洲色图清纯唯美| 精品一区二区三区免费视频| 在线观看一区不卡| 欧美成人午夜电影| 夜夜嗨av一区二区三区中文字幕 | 国产激情视频一区二区在线观看| 欧洲精品在线观看| 亚洲人精品午夜| 国产白丝网站精品污在线入口| 91精品国产综合久久久久久久| 欧美一区二区在线视频| 欧美成人r级一区二区三区| 午夜视频在线观看一区二区| 99国产精品视频免费观看| 337p粉嫩大胆噜噜噜噜噜91av| 亚洲成年人网站在线观看| 在线视频你懂得一区| **性色生活片久久毛片| 成人中文字幕电影| 国产精品久久久久久久第一福利| 国产永久精品大片wwwapp | 亚洲一二三四区不卡| 久久精品国产亚洲高清剧情介绍| 国产福利精品一区| 国产日韩精品一区| 成人免费看片app下载| 国产精品欧美久久久久一区二区| 日韩国产欧美在线观看| 欧美丰满美乳xxx高潮www| 亚洲午夜精品久久久久久久久| 色婷婷精品久久二区二区蜜臀av| 91精品国产91久久久久久一区二区 | 精品久久久久久综合日本欧美| 捆绑紧缚一区二区三区视频| 欧美xxxx老人做受| 国产高清精品久久久久| 国产精品欧美极品| 色呦呦一区二区三区| 亚洲成精国产精品女| 日韩视频永久免费| 国产精品一卡二卡| 最好看的中文字幕久久| 欧美日韩一区二区在线观看 | 久久成人18免费观看| 精品国产电影一区二区| 亚洲一区二区精品视频| 欧美一区二区三区精品| 国产乱妇无码大片在线观看| 中文字幕人成不卡一区| 欧美片在线播放| 国产精品一二三区| 一区二区三区资源| www激情久久| 91久久精品一区二区二区| 免费不卡在线视频| 91精品国产综合久久精品图片| 精品亚洲国内自在自线福利| 一区二区三区资源| 精品国产制服丝袜高跟| 91日韩一区二区三区| 毛片av一区二区三区| 久久婷婷色综合| 欧美在线观看一二区| 国产麻豆精品久久一二三| 一区二区视频免费在线观看| 欧美大胆一级视频| 91国产成人在线| 成人va在线观看| 精品一区二区在线免费观看| 一区二区三区不卡视频| 久久久久久黄色| 日韩亚洲欧美在线| 欧美日韩黄色一区二区| 成人动漫一区二区| 狠狠色狠狠色综合| 午夜久久福利影院| 一区二区久久久| 亚洲国产高清在线观看视频| 日韩免费性生活视频播放| 欧美亚洲一区二区在线| 成人av资源在线观看| 久久超级碰视频| 日本欧美久久久久免费播放网| 亚洲欧美另类综合偷拍| 欧美国产激情二区三区| 久久综合久久综合亚洲| 精品欧美一区二区久久| 日韩精品一区二区三区蜜臀 | 成人免费av在线| 国产乱码精品一区二区三区av | 一区二区三区在线影院| 国产精品天天摸av网| 久久精品水蜜桃av综合天堂| 日韩欧美一区在线| 日韩三级伦理片妻子的秘密按摩| 欧美精品久久久久久久久老牛影院| 91成人免费电影| 91丨porny丨户外露出| 成人深夜在线观看| 不卡区在线中文字幕| 不卡一卡二卡三乱码免费网站| 高清视频一区二区| 99久久久久久| 91成人免费网站| 欧美剧情电影在线观看完整版免费励志电影| 91麻豆福利精品推荐| 色综合久久综合| 欧美无砖专区一中文字| 欧美人妖巨大在线| 欧美一级淫片007| 日韩免费成人网| 久久日一线二线三线suv| 久久久久国产一区二区三区四区 | 99精品国产91久久久久久| 99久久免费国产| 欧美在线一区二区三区| 欧美情侣在线播放| 欧美精品一区二区三区蜜桃| 国产欧美一区二区在线| 一区二区三区不卡视频| 麻豆精品一二三| av资源站一区| 91麻豆精品国产自产在线| www一区二区| 一区二区欧美视频| 蜜桃av一区二区三区| 粉嫩aⅴ一区二区三区四区| 色一情一伦一子一伦一区| 欧美丰满少妇xxxxx高潮对白| 久久中文娱乐网| 亚洲精品国产精品乱码不99 | 国产精品视频一区二区三区不卡| 亚洲欧美视频在线观看视频| 蜜臂av日日欢夜夜爽一区| 懂色av噜噜一区二区三区av| 欧美在线不卡视频| 日本一区二区免费在线观看视频| 一区二区三区高清| 国产a区久久久| 91精品国产免费久久综合| 亚洲欧美一区二区三区极速播放| 蜜乳av一区二区|