10.15总结

这段时间在写矩阵加速的题目,矩阵可以加速线性递推,比如f(n)=f(n-1)+f(n-2)可以转化为

\begin{pmatrix} 1 & 1\\ 1&0 \end{pmatrix}^n\begin{pmatrix} f(2)\\f(1) \end{pmatrix}那么怎么确定转移矩阵呢,就要通过待定系数来求得,在b站的牛客竞赛有个求转移矩阵的视频,看完就可以试试这个了

P1397 [NOI2013] 矩阵游戏 - 洛谷 | 计算机科学教育新生态 (luogu.com.cn)h

还有一种常见的用法就是邻接矩阵的k次幂,(i,j)的数字就是其他点走k步到(i,j)点的方法数(边的长度要为1)

还写了道树上dp的

总思路就是设dp[i][j],i为节点编号,j为以n为起点的余3的边的数量,那么剩下的就是排列组合的问题了,这个转移方程也蛮巧妙的,刚开始算重复了,后来把子树上的三种边分开算就a了

#include<bits/stdc++.h>
#include <iomanip>
#define ll long long
#define max_int 2147483647
#define max_ll 9223372036854775807
using namespace std;
//struct matrix{
//	unsigned long long a[4][4]={0};
//	void build(){
//		for(int i=1;i<4;++i) a[i][i]=1;
//	}
//	matrix operator *(const matrix &x){
//		matrix z;
//		for(int k=1;k<4;++k){
//			for(int i=1;i<4;++i){
//				for(int j=1;j<4;++j){
//					z.a[i][j]=(z.a[i][j]+a[i][k]*x.a[k][j]%m)%m;
//				}
//			}
//		}
//		return z;
//	}
//};
//matrix matrixksm(matrix x,ll k){
//	matrix an,bn=x;
//	an.build();
//	while(k){
//		if(k&1) an=an*bn;
//		bn=bn*bn;
//		k>>=1;
//	}
//	return an;
//}
int n;
struct edge{
	int v,w;	
};
vector<edge> graph[20005];
vector<vector<int>> number(20005,vector<int>(3));
vector<int> dp(20005);
void dfs(int u){
	for(auto ed:graph[u]){
		dfs(ed.v);
		number[u][0]+=number[ed.v][(3-ed.w)%3];
		number[u][1]+=number[ed.v][(4-ed.w)%3];
		number[u][2]+=number[ed.v][(5-ed.w)%3];
		number[u][ed.w]++;
	}
	for(auto ed:graph[u]){
		vector<int> a(3);
		a[0]=number[ed.v][(3-ed.w)%3];
		a[1]=number[ed.v][(4-ed.w)%3];
		a[2]=number[ed.v][(5-ed.w)%3];
		a[ed.w]++;
		//cout<<u<<' '<<ed.v<<' '<<(number[u][1]-a[1])*a[2]<<' '<<(number[u][2]-a[2])*a[1]<<' '<<(number[u][0]-a[0])*a[0]+a[0]<<endl;
		dp[u]+=(number[u][1]-a[1])*a[2]+(number[u][2]-a[2])*a[1]+(number[u][0]-a[0])*a[0]+a[0]*2;
	}
}
int main() {

	return 0;
}

### 回答1: EasyConnect是一款用于在Mac操作系统上进行远程连接的应用程序。在Mac 10.15(Catalina)上使用EasyConnect时,需要确保应用程序与系统的兼容性,并遵循以下步骤进行安装和使用。 首先,您需要从EasyConnect的官方网站或其他可信来源下载和获取EasyConnect for Mac的安装程序。确保您下载的是最新版本,以便获得最新功能和安全性。 安装完成后,运行EasyConnect的安装程序,并按照指示完成安装。在安装过程中,您可能需要输入管理员密码以授权安装。 一旦安装完成,您可以在Launchpad或应用程序文件夹中找到EasyConnect的图标。单击图标以启动应用程序。 在EasyConnect的窗口中,您将看到一个设置和连接的选项。单击设置选项,然后输入您的远程连接服务器的地址、端口、用户名和密码等信息。 配置完成后,返回主界面,点击连接选项。系统会尝试与指定的远程服务器建立连接。如果连接成功,您将能够通过EasyConnect访问远程服务器上的文件、应用程序和其他资源。 如果遇到连接失败的情况,您可以检查您输入的服务器信息是否正确,确保您的Mac可以访问互联网,并检查任何防火墙或安全软件是否阻止EasyConnect的连接。 总结来说,EasyConnect for Mac 10.15是一款简单易用的远程连接应用程序,您只需要下载、安装并配置相关信息,就可以通过它在Mac上实现远程访问其他服务器的功能。请确保使用最新版本,并根据提供的步骤进行操作。 ### 回答2: EasyConnect for Mac10.15 是一种可用于Mac操作系统(版本号为10.15)的网络连接工具。它可以帮助用户快速、安全地访问其他网络或远程服务器。 EasyConnect for Mac10.15 的主要功能包括以下几点: 1. 连接性:它提供了一种便捷的连接方式,可以使用户通过互联网连接到各种网络资源或远程服务器。用户可以使用EasyConnect来访问公司内部网络、学校的内部网络或远程办公环境等。 2. 安全性:EasyConnect for Mac10.15通过使用加密协议和身份验证来保护用户的网络连接。它使用了各种加密技术,如SSL/TLS,以确保用户的数据在传输过程中得到加密和保护。此外,它还支持用户身份验证,以确保只有授权的用户可以访问网络资源。 3. 用户友好性:该工具界面简单直观,易于操作。用户只需轻松地设置和连接到所需的网络或远程服务器,无需担心复杂的配置过程。 4. 兼容性:EasyConnect for Mac10.15 与Mac操作系统10.15兼容,确保用户可以在最新的操作系统版本上使用该工具。 总之,EasyConnect for Mac10.15 是一款方便、安全且易于操作的网络连接工具,它可以帮助Mac10.15用户快速、安全地连接到自己需要访问的网络资源或远程服务器。无论是在家里、学校还是工作场所,该工具都可满足用户对网络连接的需求,并提供安全的数据传输。
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值