2.15学习总结

2.15
1.聪明的质监员(二分+前缀和)
2.村村通(并查集)
3.玉蟾宫(悬线法DP)
4.随机排列(树状数组逆序对问题)
5.增进感情(DFS)

6.医院设置(floyd)

聪明的质监员https://www.luogu.com.cn/problem/P1314

题目描述

小T 是一名质量监督员,最近负责检验一批矿产的质量。这批矿产共有 �n 个矿石,从 11 到 �n 逐一编号,每个矿石都有自己的重量 ��wi​ 以及价值 ��vi​ 。检验矿产的流程是:

  1. 给定�m 个区间 [��,��][li​,ri​];

  2. 选出一个参数 �W;

  3. 对于一个区间 [��,��][li​,ri​],计算矿石在这个区间上的检验值 ��yi​:

��=∑�=����[��≥�]×∑�=����[��≥�]��yi​=j=li​∑ri​​[wj​≥W]×j=li​∑ri​​[wj​≥W]vj​

其中 �j 为矿石编号。

这批矿产的检验结果 �y 为各个区间的检验值之和。即:∑�=1���i=1∑m​yi​

若这批矿产的检验结果与所给标准值 �s 相差太多,就需要再去检验另一批矿产。小T 不想费时间去检验另一批矿产,所以他想通过调整参数 �W 的值,让检验结果尽可能的靠近标准值 �s,即使得 ∣�−�∣∣s−y∣ 最小。请你帮忙求出这个最小值。

输入格式

第一行包含三个整数 �,�,�n,m,s,分别表示矿石的个数、区间的个数和标准值。

接下来的 �n 行,每行两个整数,中间用空格隔开,第 �+1i+1 行表示 �i 号矿石的重量 ��wi​ 和价值 ��vi​。

接下来的 �m 行,表示区间,每行两个整数,中间用空格隔开,第 �+�+1i+n+1 行表示区间 [��,��][li​,ri​] 的两个端点 ��li​ 和 ��ri​。注意:不同区间可能重合或相互重叠。

输出格式

一个整数,表示所求的最小值。

输入输出样例

输入 #1复制

5 3 15
1 5
2 5
3 5
4 5
5 5
1 5
2 4
3 3 

输出 #1复制

10

说明/提示

【输入输出样例说明】

当 �W 选 44 的时候,三个区间上检验值分别为 20,5,020,5,0 ,这批矿产的检验结果为 2525,此时与标准值 �S 相差最小为 1010。

【数据范围】

对于 10%10% 的数据,有 1≤�,�≤101≤n,m≤10;

对于 30%30%的数据,有 1≤�,�≤5001≤n,m≤500 ;

对于 50%50% 的数据,有 1≤�,�≤5,0001≤n,m≤5,000;

对于 70%70% 的数据,有 1≤�,�≤10,0001≤n,m≤10,000 ;

对于 100%100% 的数据,有 1≤�,�≤200,0001≤n,m≤200,000,0<��,��≤1060<wi​,vi​≤106,0<�≤10120<s≤1012,1≤��≤��≤�1≤li​≤ri​≤n 。

思路:每次找的时候用前缀和存,不然会TLE

#include <bits/stdc++.h>
using namespace std;
#define lowbit(x) (x& - (x))
#define int long long
#define INF 0x3f3f3f3f3f3f3f3f
const int N=2e5+5;

int n,m,s,min1=INF,maxn,minn=INF,sum,ans;	//矿石,区间,标准值

int w[N],v[N],l[N],r[N],pre_v[N],pre_n[N];


bool check(int k){
	ans=0,sum=0;
	memset(pre_v,0,sizeof(pre_v));
	memset(pre_n,0,sizeof(pre_n));
	for (int i=1;i<=n;++i){
		if (w[i]>=k){
			pre_v[i]=pre_v[i-1]+v[i];
			pre_n[i]=pre_n[i-1]+1;
		}else{
			pre_v[i]=pre_v[i-1];
			pre_n[i]=pre_n[i-1];
		}
	}
	for (int i=1;i<=m;++i){
		ans+=(pre_n[r[i]]-pre_n[l[i]-1])*(pre_v[r[i]]-pre_v[l[i]-1]);
	}
	sum=abs(ans-s);
	if (ans>s) return true;
	else return false;
}

signed main(){
	cin>>n>>m>>s;
	for (int i=1;i<=n;++i){
		cin>>w[i]>>v[i];
		maxn=max(maxn,w[i]);
		minn=min(minn,w[i]);
	} 
	for (int i=1;i<=m;++i){
		cin>>l[i]>>r[i];
	}
	minn=minn-1,maxn=maxn+2;
	while (minn<=maxn){
		int mid=minn+maxn>>1;
		if (check(mid)) minn=mid+1;
		else maxn=mid-1;
		if (sum<min1) min1=sum;
	}
	cout<<min1;
} 
村村通https://www.luogu.com.cn/problem/P1536

题目描述

某市调查城镇交通状况,得到现有城镇道路统计表。表中列出了每条道路直接连通的城镇。市政府 "村村通工程" 的目标是使全市任何两个城镇间都可以实现交通(但不一定有直接的道路相连,只要相互之间可达即可)。请你计算出最少还需要建设多少条道路?

输入格式

输入包含若干组测试数据,每组测试数据的第一行给出两个用空格隔开的正整数,分别是城镇数目 �n 和道路数目 �m ;随后的 �m 行对应 �m 条道路,每行给出一对用空格隔开的正整数,分别是该条道路直接相连的两个城镇的编号。简单起见,城镇从 11 到 �n 编号。

注意:两个城市间可以有多条道路相通。

在输入数据的最后,为一行一个整数 00,代表测试数据的结尾。

输出格式

对于每组数据,对应一行一个整数。表示最少还需要建设的道路数目。

输入输出样例

输入 #1复制

4 2
1 3
4 3
3 3
1 2
1 3
2 3
5 2
1 2
3 5
999 0
0

输出 #1复制

1
0
2
998

说明/提示

数据规模与约定

对于 100%100% 的数据,保证 1≤�<10001≤n<1000 。

思路:并查集,把所有的关系都连接起来,然后遍历所有情况,找到没有连接的,计数器自增

#include <bits/stdc++.h>
using namespace std;
#define lowbit(x) (x& - (x))
#define int long long
#define INF 0x3f3f3f3f3f3f3f3f
const int N=2e5+5;

int f[N],n,m,cnt,p;

int find(int x){
	if (f[x]==x) return x;
	else if (f[x]!=x){
		f[x]=find(f[x]);
		return f[x];
	}
}

void merge(int i,int j){
	f[find(i)]=find(j);
}

signed main(){
	while (1){
		cnt=0;
		cin>>n;
		if (n==0) return 0;
		cin>>m;
		for (int i=1;i<=n;++i) f[i]=i;
		for (int i=0;i<m;++i){
			int a,b;
			p=a;
			cin>>a>>b;
			merge(a,b);
		}
		for (int i=1;i<=n;++i){
			if (find(i)!=find(p)){
				cnt++;
				merge(i,p);
			}
		}
		cout<<cnt<<endl;;
	}
}
玉蟾宫https://www.luogu.com.cn/problem/P4147

题目背景

有一天,小猫 rainbow 和 freda 来到了湘西张家界的天门山玉蟾宫,玉蟾宫宫主蓝兔盛情地款待了它们,并赐予它们一片土地。

题目描述

这片土地被分成 �×�N×M 个格子,每个格子里写着 'R' 或者 'F',R 代表这块土地被赐予了 rainbow,F 代表这块土地被赐予了 freda。

现在 freda 要在这里卖萌。。。它要找一块矩形土地,要求这片土地都标着 'F' 并且面积最大。

但是 rainbow 和 freda 的 OI 水平都弱爆了,找不出这块土地,而蓝兔也想看 freda 卖萌(她显然是不会编程的……),所以它们决定,如果你找到的土地面积为 �S,它们每人给你 �S 两银子。

输入格式

第一行两个整数 �N,�M,表示矩形土地有 �N 行 �M 列。

接下来 �N 行,每行 �M 个用空格隔开的字符 'F' 或 'R',描述了矩形土地。

输出格式

输出一个整数,表示你能得到多少银子,即 (3×最大 ’F’ 矩形土地面积3×最大 ’F’ 矩形土地面积) 的值。

输入输出样例

输入 #1复制

5 6
R F F F F F
F F F F F F
R R R F F F
F F F F F F
F F F F F F

输出 #1复制

45

说明/提示

对于 50%50% 的数据,1≤�,�≤2001≤N,M≤200。
对于 100%100% 的数据,1≤�,�≤10001≤N,M≤1000。

思路:用悬线法写,l数组存每个点向左最多可以到哪里,r数组为右,h数组存的是向上最多可以到哪里,但是在找h数组的时候,需要同时判断垂直的点,lr数组的关系

#include <bits/stdc++.h>
using namespace std;
#define lowbit(x) (x& - (x))
#define int long long
#define INF 0x3f3f3f3f3f3f3f3f
const int N=1010;

int h[N][N],m,n,l[N][N],r[N][N];
char a[N][N];

signed main(){
	cin>>n>>m;
	for (int i=1;i<=n;++i){
		for (int j=1;j<=m;++j){
			cin>>a[i][j];
			if (a[i][j]=='F')h[i][j]=1;
			l[i][j]=j;
			r[i][j]=j;
		}
	}
	for (int i=1;i<=n;++i){
		for (int j=2;j<=m;++j){
			if (a[i][j]=='F' && a[i][j-1]=='F'){
				l[i][j]=l[i][j-1];
			}
		}
		for (int j=m-1;j>=1;--j){
			if (a[i][j]=='F' && a[i][j+1]=='F'){
				r[i][j]=r[i][j+1];
			}
		}
	}
	int ans=0;
	for (int i=1;i<=n;++i){
		for (int j=1;j<=m;++j){
			if (a[i][j]=='F' && a[i-1][j]=='F'){
				h[i][j]=h[i-1][j]+1;
				l[i][j]=max(l[i][j],l[i-1][j]);
				r[i][j]=min(r[i][j],r[i-1][j]);
			}
			if (a[i][j]=='F')ans=max(ans,(r[i][j]-l[i][j]+1)*h[i][j]);
		}
	}
	cout<<ans*3;
}
随机排列https://www.acwing.com/problem/content/5469/

给定一个 1∼n1∼� 的排列 a1,a2,…,an�1,�2,…,��。

我们规定,交换操作指从排列中随机选择两个不同元素并交换彼此位置。

给定两种打乱排列的方式:

  1. 对排列连续进行 3n3� 次交换操作。
  2. 对排列连续进行 7n+17�+1 次交换操作。

已知,给定排列 a1∼an�1∼�� 就是由 1,2,…,n1,2,…,� 经过上述两种打乱方式之一得到的。

请你判断,给定排列具体是由哪一种打乱方式得到的。

输入格式

第一行包含整数 n�。

第二行包含 n� 个整数 a1,a2,…,an�1,�2,…,��。

输出格式

如果给定排列是由方式 11 打乱得到的,则输出 11,如果给定排列是由方式 22 打乱得到的,则输出 22。

保证给定排列一定是由两种打乱方式之一得到的。

数据范围

前 33 个测试点满足 2≤n≤102≤�≤10。
所有测试点满足 2≤n≤1062≤�≤106,保证 a1∼an�1∼�� 是一个 1∼n1∼� 的排列。

输入样例:
5
2 4 5 1 3
输出样例:
1

思路:本质上是找逆序数,由于每次改变都会改变逆序数的奇偶性,所以,当前数组的逆序数个数的奇偶性与改变次数的奇偶性相同

#include <iostream>
#include <cstring>
#include <algorithm>
using namespace std;

const int N = 1e6+5;
int tr[N],w[N];

int lowbit(int x){
    return x & -x;
}

void update(int x, int k){
    while(x<=N){
        tr[x]+=k;
        x+=lowbit(x);
    }
}

int query(int x){
    int res=0;
    while (x>0){
        res+=tr[x];
        x-=lowbit(x);
    }
    return res;
}

int main()
{
    int n;
    cin>>n;
    int res=0;
    for (int i = 0; i < n; ++ i ){
        int x;
        cin>>x;
        res=(res+query(n)-query(x))%2;
        update(x,1);
    }
    if (res== 3*n%2) cout<<1;
    else cout << 2;
}
增进感情https://www.luogu.com.cn/problem/P2080

题目背景

小明和小红的感情,是慢慢发展起来的。

题目描述

他们对对方分别有一个好感值。定义两人的亲密程度为两人的好感值之和。

如果他们的亲密程度达到 �v,则他们将走到一起。他们以后的生活将取决于两人的好感值之差的绝对值,这个值越小,他们的生活将越幸福。

现在,他们对对方的好感值都为 00,小明有 �n 件事可以干,每件事可以增加他对小红的好感 ��ai​ 点,并且增加小红对他的好感 ��bi​ 点。(可能为负数)

小明可以任选一些事做,请你帮小明求出怎样才能让他们的生活更加幸福(求出两人在一起的前提下,好感值之差的最小绝对值即可)。

输入格式

第一行,两个正整数 �,�n,v。

之后 �n 行,每行两个空格隔开的整数 ��,��ai​,bi​。

输出格式

一行,一个非负整数,表示两人在一起的前提下,好感值之差的最小绝对值。如果无论如何两人也无法在一起,输出 -1

输入输出样例

输入 #1复制

4 15
5 6
-1 8
7 2
1 0

输出 #1复制

3

说明/提示

数据范围与约定

  • 对于 20%20% 数据,保证 �≤10n≤10。

  • 对于 100%100% 数据,保证 1≤�≤301≤n≤30,1≤∣��∣,∣��∣≤1001≤∣ai​∣,∣bi​∣≤100。

#include <bits/stdc++.h>
using namespace std;
#define lowbit(x) (x& - (x))
#define int long long
#define INF 0x3f3f3f3f3f3f3f3f

const int N=35;

int n,v,ans=INF,l,r;
int a[N],b[N],vis[N];

void dfs(int idx){
	if (l+r>=v){
		ans=min(ans,abs(l-r));
	}
	if (idx>n || ans==0){
		return ;
	}
	for (int i=idx;i<=n;++i){
		if (!vis[i]){
			vis[i]=1;
			l+=a[i],r+=b[i];
			dfs(i+1);
			l-=a[i],r-=b[i];
			vis[i]=0;
		}
	}
}

signed main(){
	cin>>n>>v; 	//v是最大的好感度
	for (int i=1;i<=n;++i){
		cin>>a[i]>>b[i];
	} 
	dfs(1);
	if (ans==INF) cout<<-1;
	else cout<<ans;
}
医院设置https://www.luogu.com.cn/problem/P1364

题目描述

设有一棵二叉树,如图:

其中,圈中的数字表示结点中居民的人口。圈边上数字表示结点编号,现在要求在某个结点上建立一个医院,使所有居民所走的路程之和为最小,同时约定,相邻接点之间的距离为 11。如上图中,若医院建在 11 处,则距离和 =4+12+2×20+2×40=136=4+12+2×20+2×40=136;若医院建在 33 处,则距离和 =4×2+13+20+40=81=4×2+13+20+40=81。

输入格式

第一行一个整数 �n,表示树的结点数。

接下来的 �n 行每行描述了一个结点的状况,包含三个整数 �,�,�w,u,v,其中 �w 为居民人口数,�u 为左链接(为 00 表示无链接),�v 为右链接(为 00 表示无链接)。

输出格式

一个整数,表示最小距离和。

输入输出样例

输入 #1复制

5     
13 2 3
4 0 0
12 4 5
20 0 0
40 0 0

输出 #1复制

81

说明/提示

数据规模与约定

对于 100%100% 的数据,保证 1≤�≤1001≤n≤100,0≤�,�≤�0≤u,v≤n,1≤�≤1051≤w≤105。

思路:n<=100数据量小,可以用floyd算法,找到最短路径,然后根据权,再遍历所有的点找到最适合的点

#include <bits/stdc++.h>
using namespace std;
#define lowbit(x) (x& - (x))
#define int long long
#define INF 0x3f3f3f3f3f3f3f3f

const int N=105;

int n,a[N][N],w[N];

signed main(){
	cin>>n;
	for (int i=1;i<=n;++i){
		for (int j=1;j<=n;++j){
			if (i==j) a[i][j]=0;
			else a[i][j]=INF;
		}
	}
	for (int i=1;i<=n;++i){
		int l,r;
		cin>>w[i]>>l>>r;
		if (l>0) a[i][l]=a[l][i]=1;
		if (r>0) a[i][r]=a[r][i]=1;
	}
	for (int k=1;k<=n;++k){
		for (int i=1;i<=n;++i){
			for (int j=1;j<=n;++j){
				a[i][j]=min(a[i][j],a[i][k]+a[k][j]);
			}
		}
	}
	int sum=INF;
	for (int i=1;i<=n;++i){
		int cnt=0;
		for (int j=1;j<=n;++j){
			cnt+=a[i][j]*w[j];	
		}
		sum=min(sum,cnt);
	}
	cout<<sum;
}

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:/a/389563.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

P1010 [NOIP1998 普及组] 幂次方题解

题目 任何一个正整数都可以用2的幂次方表示。例如137。 同时约定次方用括号来表示&#xff0c;即ab可表示为a(b)。 由此可知&#xff0c;137可表示为2(7)2(3)2(0)&#xff0c;进一步&#xff1a;72 ( 用2表示)&#xff0c;并且32。 所以137可表示为2(2(2)22(0))2(22(0))2(0…

ESP32学习(4)——电脑远程控制LED灯

1.思路梳理 首先需要让ESP32连接上WIFI 然后创建udp socket 接着接收udp数据 最后解析数据&#xff0c;控制LED 2.代码实现 import network from socket import * from machine import Pin p2Pin(2,Pin.OUT)def do_connect(): #连接wifi wlan network.WLAN(network.STA_IF)…

optee imx8mm

总仓库 git clone https://github.com/Xsyin/imx8mqevk.git -b container_region 替换imx8mqevk中的optee-client git clone https://github.com/nxp-imx/imx-optee-client.git -b lf-5.15.32_2.0.0 用 5.15.32 kernel 会有如下报错&#xff0c;需要将optee os升级到分支 lf-…

MySQL容器的数据挂载

挂载本地目录或文件 可以发现&#xff0c;数据卷的目录结构较深&#xff0c;如果我们去操作数据卷目录会不太方便。在很多情况下&#xff0c;我们会直接将容器目录与宿主机指定目录挂载。挂载语法与数据卷类似&#xff1a; # 挂载本地目录 -v 本地目录:容器内目录 # 挂载本地…

第9讲重写登录成功和登录失败处理器

重写登录成功和登录失败处理器 common下新建security包&#xff0c;再新建两个类&#xff0c;LoginSuccessHandler和LoginFailureHandler Component public class LoginSuccessHandler implements AuthenticationSuccessHandler {Overridepublic void onAuthenticationSuccess…

请标记你的龙年心愿关键词

昨天外孙陪我游了崇州市白头镇、道民镇&#xff08;竹艺村&#xff09;&#xff0c;见我心情愉悦&#xff0c;今天再陪我去饱览其他风景名胜&#xff0c;所以笔者——本“人民体验官”特别推广人民日报官方微博文化产品《2024年第一批春花开了》《#大年初七#&#xff0c;标记你…

三种输入输出函数

目录 printf函数 scanf函数 getchar函数 putchar函数 gets函数 puts函数 printf函数 当你需要将数据或文本输出到屏幕或其他输出设备时&#xff0c;C语言提供了一个非常有用的函数&#xff0c;即 printf() 函数。它是标准库中定义的函数&#xff0c;用于格式化输出。 pr…

如何监控另一台电脑屏幕画面?如何远程监控电脑屏幕?

在数字化时代&#xff0c;随着远程工作和协作的普及&#xff0c;电脑屏幕监控的需求也日益增长。无论是出于安全考虑、提高员工工作效率&#xff0c;还是确保企业机密的保密性&#xff0c;电脑屏幕监控都成为了企业不可或缺的管理工具。那么&#xff0c;如何监控另一台电脑屏幕…

怎么恢复电脑重装前的数据?介绍几种有效的方法

在日常生活和工作中&#xff0c;电脑已成为我们不可或缺的工具。然而&#xff0c;有时候我们会遇到一些突发情况&#xff0c;比如电脑系统崩溃需要重新安装系统。在这个过程中&#xff0c;我们可能会失去一些重要的数据&#xff0c;比如照片、文档、视频等。这些数据可能包含着…

第三十一回 武行者醉打孔亮 锦毛虎义释宋江-解压文件但不重复解压

武松发现蜈蚣岭寺庙里一个人搂着女的看月亮&#xff0c;就把那个人和他的道童都杀了。原来那个人叫飞天蜈蚣王道人&#xff0c;那女的是被掳来的&#xff0c;她将一包金银给武松&#xff0c;武松没有要。 就像武松在处理问题时展现出的智慧和决断力&#xff0c;现代IT技术同样…

使用骨传导耳机真的不损伤听力吗?哪些人群适合购买骨传导耳机?

如果是正确的使用骨传导耳机&#xff0c;是不会损伤听力的&#xff0c;因为骨传导耳机采用开放式佩戴&#xff0c;而且传声方式不经过耳道和耳膜&#xff0c;是通过人体骨骼来传递声音&#xff0c;不会损伤耳膜&#xff0c;所以不会损伤听力。 由于骨传导耳机的特殊性&#xff…

SG3225VEN晶体振荡器SPXO

SG3225VEN是爱普生的一款LVDS输出差分晶振&#xff0c;小体积晶振尺寸3.2*2.5mm的石英晶体振荡器&#xff0c;六脚贴片晶振&#xff0c;电源电压2.5V、3.3V&#xff0c;频率范围25mhz ~ 500mhz&#xff0c;工作温度可达到- 40℃~ 105℃&#xff0c;该产品具有超小型&#xff0…

【深入理解BEVFormer】BEVFormer

任务场景 多模态融合和多传感器融合 BEV&#xff1a;鸟瞰图 这个特征空间与每个视角都相关 早期是用后融合&#xff0c;目前比较流行的是特征级融合 自身运动补偿&#xff1a;如果按照像素点进行特征对齐&#xff0c;需要指定偏移量 x y两个方向 特征空间是自己定义的&#xf…

使用REQUESTDISPATCHER对象调用错误页面

使用REQUESTDISPATCHER对象调用错误页面 问题陈述 InfoSuper公司已经创建了一个动态网站。发生错误时,浏览器中显示的堆栈跟踪很难理解。公司的系统分析师David Wong让公司的软件程序员Don Allen创建自定义错误页面。servlet引发异常时,应使用RequestDisapatcher对象向自定义…

【牛客面试必刷TOP101】Day22.BM16 删除有序链表中重复的元素-II和BM21 旋转数组的最小数字

作者简介&#xff1a;大家好&#xff0c;我是未央&#xff1b; 博客首页&#xff1a;未央.303 系列专栏&#xff1a;牛客面试必刷TOP101 每日一句&#xff1a;人的一生&#xff0c;可以有所作为的时机只有一次&#xff0c;那就是现在&#xff01;&#xff01;&#xff01;&…

OpenAI 最新发布的从文本生成视频模型 Sora 炸裂登场,它能根据文字指令创造逼真且富有想象力的场景

文章目录 一、前言二、主要内容三、总结 &#x1f349; CSDN 叶庭云&#xff1a;https://yetingyun.blog.csdn.net/ 一、前言 此页面上的所有视频均由 Sora 直接生成&#xff0c;未经修改。 OpenAI - Sora is an AI model that can create realistic and imaginative scenes f…

关于Build Your Own Botnet的尝试

这是一次失败的尝试、 原文地址&#xff1a;关于Build Your Own Botnet的尝试 - Pleasure的博客 下面是正文内容&#xff1a; 前言 我在上一篇关于DDOS的文章种提到过这个项目&#xff0c;而且说明了由于这个项目是在2020年发布并开源的&#xff0c;并且已经有两年没有进行跟…

react+ts【项目实战一】配置项目/路由/redux

文章目录 1、项目搭建1、创建项目1.2 配置项目1.2.1 更换icon1.2.2 更换项目名称1.2.1 配置项目别名 1.3 代码规范1.3.1 集成editorconfig配置1.3.2 使用prettier工具 1.4 项目结构1.5 对css进行重置1.6 注入router1.7 定义TS组件的规范1.8 创建代码片段1.9 二级路由和懒加载1.…

【JS逆向+Python模拟API请求】逆向某一个略微中等的混淆网站,并模拟调用api请求 仅供学习。注:不是源代码混淆,而是一个做代码混淆业务的网站,

逆向日期&#xff1a;2024.02.16 使用工具&#xff1a;Node.js 加密方法&#xff1a;RSA标准库 文章全程已做去敏处理&#xff01;&#xff01;&#xff01; 【需要做的可联系我】 AES解密处理&#xff08;直接解密即可&#xff09;&#xff08;crypto-js.js 标准算法&#xf…