2024实验班选拔考试(热身赛)

比赛传送门

邀请码:2024wksyb

A. 简单的数列问题

签到,记得开long long。

#include<bits/stdc++.h>
#define rep(i,a,b) for (int i=a;i<b;++i)
#define per(i,a,b) for (int i=a;i>b;--i)
#define se second 
#define fi first
#define endl '\n'
#define all(x) (x).begin(),(x).end()
#define pii pair<int,int>
#define pli pair<LL,int>
#define pll pair<LL,LL>
#define MEM(a,x) memset(a,x,sizeof(a))
#define OJBK {cout<<"ok"<<endl;return;}
inline int Ls(int p){return p<<1;}
inline int Rs(int p){return p<<1|1;}
typedef long long LL;
typedef unsigned long long ULL;
using namespace std;
const int MOD=998244353;
const int N=1e6+10,M=1e4+10;
LL f[100];
LL calc(int n)
{if(f[n]) return f[n];return f[n]=calc(n-1)+calc(n-2);
}
void Solve()
{f[1]=f[2]=1;int n;cin>>n;cout<<calc(n)<<endl;
}
int main()
{#ifndef ONLINE_JUDGEfreopen("1.in","r",stdin);freopen("1.out","w",stdout);#endifios::sync_with_stdio(0),cin.tie(0),cout.tie(0);int _=1;//cin>>_;while(_--){Solve(); }return 0;
}

B. 第一次放学

计算每一个班级的人数,贪心的想尽量保留人数较多的,从小到大排序,从小的开始累计即可。

#include<bits/stdc++.h>
#define rep(i,a,b) for (int i=a;i<b;++i)
#define per(i,a,b) for (int i=a;i>b;--i)
#define se second 
#define fi first
#define endl '\n'
#define all(x) (x).begin(),(x).end()
#define pii pair<int,int>
#define pli pair<LL,int>
#define pll pair<LL,LL>
#define MEM(a,x) memset(a,x,sizeof(a))
#define OJBK {cout<<"ok"<<endl;return;}
inline int Ls(int p){return p<<1;}
inline int Rs(int p){return p<<1|1;}
typedef long long LL;
typedef unsigned long long ULL;
using namespace std;
const int MOD=998244353;
const int N=1e5+10,M=1e4+10;
int a[N];
void Solve()
{int n,m,k;cin>>n>>m>>k;rep(i,0,n){int x; cin>>x;++a[x];}sort(a+1,a+1+n);int s=0,mx=0;rep(i,1,n+1){if(s<k){s+=a[i];if(s>k) mx=max(mx,s-k);}else mx=max(mx,a[i]);}cout<<mx<<endl;
}
int main()
{#ifndef ONLINE_JUDGEfreopen("1.in","r",stdin);freopen("1.out","w",stdout);#endifios::sync_with_stdio(0),cin.tie(0),cout.tie(0);int _=1;//cin>>_;while(_--){Solve(); }return 0;
}

C. 糖果传递

设每一个a_i得到上一个给的值x_{i-1}a_1的为x_n),对下一个的贡献出x_i。注意所有x_i可正可负,负数代表反向给出。记b =\frac{\sum a_i}{n},可以列出下式:

\left\{\begin{matrix} x_n+a_1-x_1=b \\ x_1+a_2-x_2=b \\ ... \\ x_{n-1}+a_n-x_n=b \end{matrix}\right.

题目转换为求出|x_1|+|x_2|+|x_3|+...+|x_n|的最小值,把x_i都用x_1来表示:

\left\{\begin{matrix} x_2=x_1+a_2-b \\ x_3=x_1+a_2+a_3-2*b \\ ... \\ x_{n-1}=x_1+a_2+a_3+...+a_{n-1}-(n-2)*b \\ x_n=x_1-a_1+b \end{matrix}\right.

问题就是确定x_1,使得数轴上x_1到 n 个点0,b-a_2,2*b-a_2+a_3,...,(n-2)*b+a_2+...+a_{n-1},a_1-b 距离和的最小值,选择其中位数即可。

#include<bits/stdc++.h>
#define rep(i,a,b) for (int i=a;i<b;++i)
#define per(i,a,b) for (int i=a;i>b;--i)
#define se second 
#define fi first
#define endl '\n'
#define all(x) (x).begin(),(x).end()
#define pii pair<int,int>
#define pli pair<LL,int>
#define pll pair<LL,LL>
#define MEM(a,x) memset(a,x,sizeof(a))
#define OJBK {cout<<"ok"<<endl;return;}
inline int Ls(int p){return p<<1;}
inline int Rs(int p){return p<<1|1;}
typedef long long LL;
typedef unsigned long long ULL;
using namespace std;
const int MOD=998244353;
const int N=1e6+10,M=1e4+10;
int a[N];
LL v[N];
void Solve()
{int n; cin>>n;LL s=0,t=0;rep(i,1,n+1) cin>>a[i],s+=a[i];if(n==1){cout<<0<<endl; return;}int b=s/n;rep(i,1,n+1){t+=a[i];if(i==1) v[i]=0;else if(i==n) v[i]=a[1]-b;else v[i]=1ll*(i-1)*b-t+a[1];}sort(v+1,v+1+n);LL ans=0;rep(i,1,n+1) ans+=abs(v[n/2]-v[i]);cout<<ans<<endl;
}
int main()
{#ifndef ONLINE_JUDGEfreopen("1.in","r",stdin);freopen("1.out","w",stdout);#endifios::sync_with_stdio(0),cin.tie(0),cout.tie(0);int _=1;//cin>>_;while(_--){Solve(); }return 0;
}

D. 矩阵计数

直接计算不好算,考虑用总数\sum_{i=1}^{n} \sum_{j=1}^{m} \sum_{x=1}^{i} \sum_{y=1}^{j} 1=\sum_{i=1}^{n} \sum_{j=1}^{m} i \cdot j= \sum_{i=1}^{n} i \cdot \sum_{j=1}^{m} j=\frac{n(n+1)}{2} \cdot \frac{m(m+1)}{2}

减去不合法数量。

先把所有的点按横坐标小到大排序(相等按纵坐标),于是可以把不和法的情况划分为:枚举 i ,包含以 i 点开头的所有子矩阵个数。这样的算法很方面,只需要保证 i 点与前面节点不包含即可,向前枚举,一段一段的算,卡一下纵坐标的上下界就可以了。

如下图所示,计算以 c 点开头的所有子矩阵个数,保证不包含前面节点,可以分为三段,第一段矩阵左上角选择范围是列值在bc段(不含b),行值比 c 小,右下角为 c 的左下方,如图红色矩阵所示;第二段ab段(不含a)加上了 b 点的限制,右下角列值必须小于 b ,如图中绿色矩阵所示;第三段0a段(不含0),加上 a 点限制,左上角的列值要在ac之间(不含a),如蓝色矩阵所示。通过不断更新左上角和右下角限制,可以设计出一个O(C^2)的算法。

//#pragma GCC optimize(3,"Ofast","inline")
#include<bits/stdc++.h>
#define rep(i,a,b) for (int i=a;i<b;++i)
#define per(i,a,b) for (int i=a;i>b;--i)
#define se second 
#define fi first
#define endl '\n'
#define all(x) (x).begin(),(x).end()
#define pii pair<int,int>
#define pli pair<LL,int>
#define pll pair<LL,LL>
#define MEM(a,x) memset(a,x,sizeof(a))
#define OJBK {cout<<"ok"<<endl;return;}
inline int Ls(int p){return p<<1;}
inline int Rs(int p){return p<<1|1;}
typedef long long LL;
typedef unsigned long long ULL;
using namespace std;
const int MOD=1e9+7;
const int N=1e5+10,M=2e5+10;
pii a[N];
int sfmod(int x,int m=MOD)
{return (x%m+m)%m; 
}
void Solve()
{int n,m,k;cin>>n>>m>>k;rep(i,1,k+1) cin>>a[i].fi>>a[i].se;sort(a+1,a+1+k);int ans=1ll*n*(n+1)/2%MOD*(1ll*m*(m+1)/2%MOD)%MOD;rep(i,1,k+1){int l=1,r=m;int res=0;per(j,i-1,-1){int x=1ll*(a[j+1].fi-a[j].fi)*(a[i].se-l+1)%MOD;int y=1ll*(n-a[i].fi+1)*(r-a[i].se+1)%MOD;res=(res+1ll*x*y%MOD)%MOD;if(a[j].se<=a[i].se) l=max(l,a[j].se+1);if(a[j].se>=a[i].se) r=min(r,a[j].se-1);}ans=sfmod(ans-res);}ans=sfmod(ans);cout<<ans<<endl;
}
int main()
{#ifndef ONLINE_JUDGEfreopen("1.in","r",stdin);freopen("1.out","w",stdout);#endifios::sync_with_stdio(0),cin.tie(0),cout.tie(0);int _=1;//cin>>_;while(_--){Solve(); }return 0;
}

E. 解方程

注意到函数在x > 0 时是单增的,根据零点存在定理二分,稍微调整一下参数 mx 和 eps 即可通过。

//#pragma GCC optimize(3,"Ofast","inline")
#include<bits/stdc++.h>
#define rep(i,a,b) for (int i=a;i<b;++i)
#define per(i,a,b) for (int i=a;i>b;--i)
#define se second 
#define fi first
#define endl '\n'
#define all(x) (x).begin(),(x).end()
#define pii pair<int,int>
#define pli pair<LL,int>
#define pll pair<LL,LL>
#define MEM(a,x) memset(a,x,sizeof(a))
#define OJBK {cout<<"ok"<<endl;return;}
inline int Ls(int p){return p<<1;}
inline int Rs(int p){return p<<1|1;}
typedef long long LL;
typedef unsigned long long ULL;
typedef double db;
using namespace std;
const int MOD=998244353;
const int N=1e7+10,M=1e4+10;
const db eps=1e-5;
db f(db x)
{return 2018*x*x*x*x+21*x+5*x*x*x+5*x*x+14;
}
void Solve()
{db y,l=0,r=100,mx=10000;cin>>y;rep(i,0,mx){db mid=(l+r)/2;if(f(mid)>y) r=mid;else l=mid;}if(abs(f(l)-y)<eps) cout<<fixed<<setprecision(4)<<l<<endl;else cout<<-1<<endl;
}
int main()
{#ifndef ONLINE_JUDGEfreopen("1.in","r",stdin);freopen("1.out","w",stdout);#endifios::sync_with_stdio(0),cin.tie(0),cout.tie(0);int _=1;cin>>_;while(_--){Solve(); }return 0;
}

F. 随机数

根据二项式定理:

(a+b)^n=\sum_{i=0}^{n} \binom{n}{i} a^ib^{n-i}

现在要计算 a 的指数为奇数的和,如果 n 是奇数,就可以构造 \frac{(a+b)^n+(a+(-b))^n}{2}(a-b)^n的展开中偶数项的 (-b) 指数 n-i 为奇数,提出负号刚好可以与对应(a+b)^n展开项消掉。同理若 n 为偶数,构造\frac{(a+b)^n-(a+(-b))^n}{2}即可。

n 很大,但是本题满足模数与底数互素,可以用欧拉降幂提前对 n 做 \pmod {p-1}处理。而且 p-1 是偶数,取模后并不影响原先 n 的奇偶性。

//#pragma GCC optimize(3,"Ofast","inline")
#include<bits/stdc++.h>
#define rep(i,a,b) for (int i=a;i<b;++i)
#define per(i,a,b) for (int i=a;i>b;--i)
#define se second 
#define fi first
#define endl '\n'
#define all(x) (x).begin(),(x).end()
#define pii pair<int,int>
#define pli pair<LL,int>
#define pll pair<LL,LL>
#define MEM(a,x) memset(a,x,sizeof(a))
#define OJBK {cout<<"ok"<<endl;return;}
inline int Ls(int p){return p<<1;}
inline int Rs(int p){return p<<1|1;}
typedef long long LL;
typedef unsigned long long ULL;
typedef double db;
using namespace std;
const int MOD=1e9+7;
const int N=1e7+10;
int qp(int a,int b,int m=MOD)
{int res=1;while(b){if(b&1) res=1ll*res*a%m;a=1ll*a*a%m;b>>=1;}return res%m;
}
int sfmod(int x,int m=MOD)
{return (x%m+m)%m;
}
void Solve()
{int a,n=0; string s;cin>>a>>s;for(auto i:s) n=(1ll*n*10+(int)(i-'0'))%(MOD-1);a=1ll*a*qp(10000,MOD-2)%MOD; int b=sfmod(1-a);int Sum=qp((a+b)%MOD,n),Sub=qp(sfmod(a-b),n),inv2=qp(2,MOD-2),ans=0;if(n&1){ans=1ll*(Sum+Sub)%MOD*inv2%MOD;}else{ans=1ll*sfmod(Sum-Sub)*inv2%MOD;}cout<<ans<<endl;
}
int main()
{#ifndef ONLINE_JUDGEfreopen("1.in","r",stdin);freopen("1.out","w",stdout);#endifios::sync_with_stdio(0),cin.tie(0),cout.tie(0);int _=1;//cin>>_;while(_--){Solve(); }return 0;
}

G. 【模板】线性筛

复习一下线性筛怎么写,题目问的是第几个素数,数组大小要多开一点。

//#pragma GCC optimize(3,"Ofast","inline")
#include<bits/stdc++.h>
#define rep(i,a,b) for (int i=a;i<b;++i)
#define per(i,a,b) for (int i=a;i>b;--i)
#define se second 
#define fi first
#define endl '\n'
#define all(x) (x).begin(),(x).end()
#define pii pair<int,int>
#define pli pair<LL,int>
#define pll pair<LL,LL>
#define MEM(a,x) memset(a,x,sizeof(a))
#define OJBK {cout<<"ok"<<endl;return;}
inline int Ls(int p){return p<<1;}
inline int Rs(int p){return p<<1|1;}
typedef long long LL;
typedef unsigned long long ULL;
using namespace std;
const int MOD=998244353;
const int N=1e5+10,M=1e7+10;
int pr[N],cnt;
bool st[M];
void INIT()
{int n=1e7;rep(i,2,n+1){if(!st[i]) pr[++cnt]=i;rep(j,1,cnt+1){if(pr[j]*i>n) break;st[i*pr[j]]=1;if(i%pr[j]==0) break;}}
}
void Solve()
{int n;cin>>n;cout<<pr[n]<<endl;
}
int main()
{#ifndef ONLINE_JUDGEfreopen("1.in","r",stdin);freopen("1.out","w",stdout);#endifios::sync_with_stdio(0),cin.tie(0),cout.tie(0);int _=1;INIT();cin>>_;while(_--){Solve(); }return 0;
}

 H. 加解密

如果 S 出现在 a/b 的小数部分中,计算 S*b 和 (S+1)*b 取进位的值可以算出 S 前面的数为,这样可以得到一个范围 [l,r]。计算a*10^i \% b,如果某一个值在范围内则可以认为 S 出现在了 i+1。

对于 i 比较大的情况,直接枚举会超时。此时可以采用类似于哈希碰撞爆破的思路,a 先计算到 N 的偏移,即 a=a*10^N \% b,计算一个新的范围 [l,r],设置一个宽度 H,向后计算 M 次,将 (a*10^{H*i}\%b,N+H*i) 插入到哈希表中,考虑范围中的每一个值 x,如果x*10^i\%b (0 \le i < H)出现在了哈希表中即可。对于本题,取N=M=10^6,H=1000,即可通过。

//#pragma GCC optimize(3,"Ofast","inline")
#include<bits/stdc++.h>
#define rep(i,a,b) for (int i=a;i<b;++i)
#define per(i,a,b) for (int i=a;i>b;--i)
#define se second 
#define fi first
#define endl '\n'
#define all(x) (x).begin(),(x).end()
#define pii pair<int,int>
#define pli pair<LL,int>
#define pll pair<LL,LL>
#define MEM(a,x) memset(a,x,sizeof(a))
#define OJBK {cout<<"ok"<<endl;return;}
inline int Ls(int p){return p<<1;}
inline int Rs(int p){return p<<1|1;}
typedef long long LL;
typedef unsigned long long ULL;
using namespace std;
const int MOD=998244353;
const int N=1e6;
LL a,b,c[N+10];
int l,r;
string s;
int gcd(int a,int b)
{while(b^=a^=b^=a%=b);return a;
}
void calc()
{int n=s.size();c[n]=0;rep(i,0,n) c[i]=s[n-i-1]-'0';rep(i,0,n) c[i]*=b;rep(i,0,n) c[i+1]+=c[i]/10,c[i]%=10;int m=n;while(c[m]/10){c[m+1]=c[m]/10; c[m]%=10;++m;}l=0;per(i,m,n-1) l=l*10+c[i];bool fl=0;rep(i,0,n) if(c[i]) fl=1;l+=fl;c[n]=0;rep(i,0,n) c[i]=s[n-i-1]-'0';c[0]+=1;rep(i,0,n) c[i]*=b;rep(i,0,n) c[i+1]+=c[i]/10,c[i]%=10;m=n;while(c[m]/10){c[m+1]=c[m]/10; c[m]%=10;++m;}r=0;per(i,m,n-1) r=r*10+c[i];
}
void Solve()
{cin>>a>>b>>s;int d=gcd(a,b); a/=d;b/=d;a%=b;calc();LL pos=a;rep(i,0,N){if(l<=pos&&pos<=r){cout<<i+1<<endl;return;}pos=pos*10%b;}rep(i,0,N){a*=10; a%=b;int d=gcd(a,b);a/=d; b/=d;}calc();unordered_map<int,int>mp;LL h=1; int H=1000;rep(i,0,H) h=h*10%b;rep(i,1,N){a=a*h%b;if(!mp.count(a)) mp[a]=N+H*i;}int ans=(1<<30);rep(i,l,r+1){LL j=i;rep(_,0,H){if(mp.count(j)) ans=min(ans,mp[j]-_+1);j=j*10%b;}}if(ans==(1<<30)) cout<<-1<<endl;else cout<<ans<<endl;
}
int main()
{#ifndef ONLINE_JUDGEfreopen("1.in","r",stdin);freopen("1.out","w",stdout);#endifios::sync_with_stdio(0),cin.tie(0),cout.tie(0);int _=1;//cin>>_;while(_--){Solve(); }return 0;
}

I. Treepath

以点 1 为根,求出所有点到 1 的距离,记为 d[i] 。i , j 两个点的距离就是 d[i]+d[j] ,只有同奇偶时和才为偶数,分别统计出奇数距离个数 v1 和偶数距离个数 v0,答案就是\binom{v0}{2}+\binom{v1}{2}

//#pragma GCC optimize(3,"Ofast","inline")
#include<bits/stdc++.h>
#define rep(i,a,b) for (int i=a;i<b;++i)
#define per(i,a,b) for (int i=a;i>b;--i)
#define se second 
#define fi first
#define endl '\n'
#define all(x) (x).begin(),(x).end()
#define pii pair<int,int>
#define pli pair<LL,int>
#define pll pair<LL,LL>
#define MEM(a,x) memset(a,x,sizeof(a))
#define OJBK {cout<<"ok"<<endl;return;}
inline int Ls(int p){return p<<1;}
inline int Rs(int p){return p<<1|1;}
typedef long long LL;
typedef unsigned long long ULL;
using namespace std;
const int MOD=998244353;
const int N=1e5+10,M=2e5+10;
int d[N];
int h[N],ne[M],e[M],idx;
int v0,v1;
void add(int a,int b)
{e[++idx]=b;ne[idx]=h[a];h[a]=idx;
}
void dfs(int u,int fa)
{if(d[u]&1) ++v1;else ++v0;for(int i=h[u];i;i=ne[i]){int v=e[i];if(v==fa) continue;d[v]=d[u]+1;dfs(v,u);}
}
void Solve()
{int n;cin>>n;rep(i,0,n-1){int a,b;cin>>a>>b;add(a,b);add(b,a);}dfs(1,0);LL ans=1ll*v0*(v0-1)/2+1ll*v1*(v1-1)/2;cout<<ans<<endl;
}
int main()
{#ifndef ONLINE_JUDGEfreopen("1.in","r",stdin);freopen("1.out","w",stdout);#endifios::sync_with_stdio(0),cin.tie(0),cout.tie(0);int _=1;//cin>>_;while(_--){Solve(); }return 0;
}

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

如若内容造成侵权/违法违规/事实不符,请联系长河编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

【C#语音文字互转】.NET的TTS文本转语音合成

官方文档给出环境为Visual Studio 2017及以上&#xff1b;C#SDK为.NET4.8及以上 本文章环境介绍&#xff1a; Visual Studio 2022&#xff1b;C#SDK为.NET6.0 语音转文字请移步&#xff1a;【C#语音文字互转】C#语音转文字&#xff08;方法一&#xff09; 一. 启动 Visual Stud…

【OceanBase系列】—— OceanBase应急三板斧

作者&#xff1a; 花名&#xff1a;洪波&#xff0c; OceanBase 数据库解决方案架构师 目前随着OceanBase数据库越来越流行&#xff0c;社区已经有很多用户在生产环境使用了OceanBase&#xff0c;也有不少用户的核心业务用到了OceanBase数据库&#xff0c;在使用OceanBase数据库…

新址·新征程|美创科技北京中心喜迎乔迁

7月30日&#xff0c;北京暴雨倾城 连绵大雨和隆隆雷声 却像是在为一场新征程洗礼 这一天&#xff0c;我们迎来了重要的时刻 ——美创科技北京中心搬新家啦&#xff01; 新址&#xff1a;北京市海淀区庚坊国际大厦6层 喜迎新址&#xff0c;一场简单但喜气盈盈、温馨十足的乔…

【Python学习手册(第四版)】学习笔记16-函数基础

个人总结难免疏漏&#xff0c;请多包涵。更多内容请查看原文。本文以及学习笔记系列仅用于个人学习、研究交流。 本文主要介绍Python中函数的基本概念&#xff0c;作用域以及参数传递&#xff0c;函数语法以及def和return语句的操作&#xff0c;函数调用表达式的行为&#xff…

Delphi5实现DLL的编写、调用

效果图 显式跟隐式调用差不多的&#xff0c;就重新画了窗体&#xff0c;画的有点粗糙。 DLL文件 DLL文件是一种包含了可执行代码的库文件&#xff0c;但它不能独立运行&#xff0c;必须由其他程序&#xff08;如EXE文件&#xff09;显式或隐式地加载并调用。DLL文件通常用于实…

全国地铁路线及站点SHP数据

数据是GIS的血液&#xff01; 我们在《126M全球手机基站SHP数据分享》一文中&#xff0c;为你分享过全球手机基站分布数据。 现在再为你分享全国地铁轻轨路线与站点SHP数据&#xff0c;你可以在文末查看该数据的领取方法。 全球地铁路线及站点数据 截至2023年12月31日&…

LAVIS在Mac,M1PRO芯片下的安装实战

LAVIS在Mac,M1PRO芯片下的安装实战 契机 ⚙ 本地想装个图片理解的大模型&#xff0c;看了下blip2感觉比较合适&#xff0c;macos安装的时候有点坑需要注意下&#xff0c;但是最终也无法使用mps加速&#xff0c;比较蛋疼。这里记录下安装步骤。 安装 LAVIS/projects/blip2 a…

【研发日记】Matlab/Simulink技能解锁(十二)——Stateflow中的两种状态机嵌套对比

文章目录 前言 项目背景 两级状态机 函数状态机 分析和应用 总结 参考资料 前言 见《【研发日记】Matlab/Simulink技能解锁(七)——两种复数移相算法》 见《【研发日记】Matlab/Simulink技能解锁(八)——分布式仿真》 见《【研发日记】Matlab/Simulink技能解锁(九)——基…

数据结构(其四)--特殊矩阵的存储

目录 11.特殊矩阵的压缩存储 &#xff08;1&#xff09;.一维数组的储存结构 &#xff08;2&#xff09;.二维数组的存储结构 &#xff08;3&#xff09;.普通矩阵的存储 &#xff08;4&#xff09;.特殊矩阵的压缩存储 i.对称矩阵 ii.三角矩阵 iii.三对角矩阵 iiii.稀疏矩…

Java多商户新零售超市外卖商品系统

解锁新零售奥秘&#xff0c;多商户外卖超市商品系统大揭秘&#xff01; &#x1f31f; 开篇&#xff1a;新零售时代的浪潮 在这个日新月异的数字化时代&#xff0c;新零售已悄然成为商业变革的新风口。想象一下&#xff0c;足不出户就能逛遍全城商家&#xff0c;心仪商品一键…

力扣——238.移动零

题目 思路 利用双指针&#xff0c;先找到第一个为0的地方指向&#xff0c;指针2指向下一个&#xff0c;指针1之前是已经处理好的数据&#xff0c;指针2进行遍历&#xff0c;遇到非零则与指针1数据交换&#xff0c;然后指针1。 代码 class Solution { public:void moveZeroes(…

离心机转子适配器容量转换器的作用

离心机转子是离心机的核心部件&#xff0c;离心机中的所有系统都配置为保证转子在一定条件下安全运行。转子不仅直接影响分离效果&#xff0c;而且也是离心机技术中的主要承力部件&#xff0c;对离心机的安全性极为重要。 简而言之&#xff0c;离心机可分为两部分&#xff1a;…

Java Web——第二天

什么是JavaScript? JavaScript(简称:JS) 是一门跨平台、面向对象的脚本语言。是用来控制网页行为的&#xff0c;它能使网页可交互 JavaScript和Java是完全不同的语言&#xff0c;不论是概念还是设计。但是基础语法类似 JavaScript在1995年由 Brendan Eich 发明&#xff0c;…

【MySQL】索引概念解析

1.什么是索引&#xff1f; MySQL中的索引是一种数据结构&#xff0c;用于帮助MySQL数据库管理系统快速查询数据。索引的主要目的是提高数据检索的速度&#xff0c;减少数据库系统需要扫描的数据量。 优点&#xff1a; 索引可以极大的提高数据检索效率&#xff0c;降低数据库…

C语言——预处理和指针

C语言——预处理和指针 预处理宏宏定义宏的作用域带参的宏 文件包含条件编译 指针指针的概念指针的定义 预处理 编程的流程分为&#xff1a;编辑、编译、运行、调试四个阶段&#xff1b; 预处理属于编译阶段&#xff0c;编译过程又可以分为&#xff1a;预处理、编译、汇编、链…

TikTok达人效应:品牌出海中的文化桥梁与本土化策略

在全球化的浪潮下&#xff0c;品牌出海已成为企业拓展市场的必经之路。然而&#xff0c;跨越文化差异、实现品牌本土化传播一直是企业面临的巨大挑战。TikTok作为一款全球流行的短视频平台&#xff0c;其庞大的用户基础和强大的影响力&#xff0c;为品牌出海提供了新的机遇。在…

大数据技术复习--大数据与云计算、物联网、人工智能

云计算 ** 概念&#xff1a;美国国家标准技术研究院“一种无处不在的、便捷的且按需的对一个共享的可配置的计算资源&#xff08;如网络&#xff0c;服务器、存储、应用和服务&#xff09;进行网络访问的模式&#xff0c;他能够通过少量的管理或服务供应商的互动实现计算资源的…

CTFHub技能树web——XSS——DOM反射

根据框里的内容 直接右键查看网页源代码 看到 了其闭合方式 然后去网页测试一下alert&#xff08;1&#xff09;反射 ;</script><script>alert(1)</script> 看到 确实存在 去xssaq.cn 创建一个项目 把src粘过来 在第一个输入框中 再将返回回来的url 复…

MATLAB计算心理声学烦恼度例子

在这个例子中&#xff0c;您测量发动机噪音&#xff0c;并使用心理声学指标来模拟其感知响度、尖锐度、波动强度、粗糙度和总体烦扰程度。然后&#xff0c;模拟添加隔音材料&#xff0c;重新计算总体噪音水平。最后&#xff0c;比较恼人程度&#xff0c;并显示应用隔音材料后的…

【LabVIEW学习篇 - 12】:通知器

文章目录 通知器案例一案例二案例三&#xff08;在不同VI中用同一个通知器&#xff09; 通知器 同步技术&#xff1a;同步技术用来解决多个并行任务之间的同步或通信问题。 通知器比较适合一对多的操作&#xff0c;类似于广播&#xff0c;一点发出的通知消息&#xff0c; 其它…