Educational Codeforces Round 142 (Rated for Div. 2)(C,D)
1.AtCoder Beginner Contest 293(C,D ,E,F)2.Educational Codeforces Round 115 (Rated for Div. 2)(D,E)3.AtCoder Beginner Contest 294(E,F,G)4.AtCoder Beginner Contest 2465.中国石油大学(北京)第三届“骏码杯”程序设计竞赛(同步赛)(D,E,F)6.Codeforces Global Round 16(D,E,F)7.AtCoder Beginner Contest 209(D,E)8.Monoxer Programming Contest 2022(AtCoder Beginner Contest 238)(E,F)9.AtCoder Beginner Contest 285(B,D,E,F)10.AtCoder Beginner Contest 242(D,E)11.AtCoder Beginner Contest 223(D,E,F)12.AtCoder Beginner Contest 207(D,E)13.AtCoder Beginner Contest 247(E,F)14.AtCoder Beginner Contest 226(E,F,G)15.AtCoder Beginner Contest 229(F,G)16.AtCoder Beginner Contest 273(E)17.AtCoder Beginner Contest 286(G)18.AtCoder Beginner Contest 287(C,D,E,F)19.AtCoder Beginner Contest 288(D,E,F)20.AtCoder Beginner Contest 289(E,F)21.AtCoder Beginner Contest 290(D,E)22.AtCoder Beginner Contest 292(E,F,G)23.AtCoder Beginner Contest 298(D,F)24.AtCoder Beginner Contest 299(E,F)25.AtCoder Beginner Contest 300(E,F)26.AtCoder Beginner Contest 302(E,F,G)27.AtCoder Beginner Contest 253(E,F)28.AtCoder Beginner Contest 245(D,E,F)29.AtCoder Beginner Contest 248(D,E,F) 30.AtCoder Beginner Contest 206(Sponsored by Panasonic)(E,F)31.Codeforces Round 875 (Div. 2)(D)32.AtCoder Beginner Contest 178(E,F)33.AtCoder Beginner Contest 307(E,F,G)34.CodeTON Round 5 (Div. 1 + Div. 2, Rated, Prizes!)C35.Educational Codeforces Round 151 (Rated for Div. 2)(C,D)36.AtCoder Beginner Contest 212(E,F)37.牛客小白月赛5138.2022年浙大城市学院新生程序设计竞赛(同步赛)(补题)39.Codeforces Round #770 (Div. 2)B,C40.Codeforces Global Round 24(B,C)41.Codeforces Round #836 (Div. 2)C42.Codeforces Round #840 (Div. 2) C43.Good Bye 2022: 2023 is NEAR C44.Codeforces Round #765 (Div. 2)A,B,C45.Codeforces Round #766 (Div. 2)C,D46.Codeforces Round #841 (Div. 2) and Divide by Zero 202247.Codeforces Round #767 (Div. 2)C ,D 48.Codeforces Round #768 (Div. 2)C ,D49. Codeforces Round #769 (Div. 2) B,C50.Educational Codeforces Round 122 (Rated for Div. 2),C,D51.Educational Codeforces Round 119 (Rated for Div. 2)52.AtCoder Beginner Contest 25853.Codeforces Round #763 (Div. 2)C54.Codeforces Round #843 (Div. 2)(B,C,D,E)55.Educational Codeforces Round 141 (Rated for Div. 2)(B,C,D)56.AtCoder Beginner Contest 275(B,C,D,E,F)57.Codeforces Round #842 (Div. 2)(B,D,E)58.AtCoder Beginner Contest 284(D,E,F)59.The 14th Jilin Provincial Collegiate Programming Contest(补题)60.牛客小白月赛65(C,D,E,F)61.AtCoder Beginner Contest 281(D,E,F)62.Good Bye 2021: 2022 is NEAR D63.Hello 202364.The 15th Jilin Provincial Collegiate Programming Contest(补题)65.Codeforces Round #781 (Div. 2)C 66.Hello 2022(B,D)67.AtCoder Beginner Contest 272(D,E)68.Codeforces Round 751 (Div. 2)(D)69.Codeforces Round 856 (Div. 2)(C,D)70.Codeforces Round 752 (Div. 2)(C,D,E)71.Codeforces Round 855 (Div. 3)(E,F)72.AtCoder Regular Contest 131(A,B,C)73.Educational Codeforces Round 144 (Rated for Div. 2)(A,B,C,D)74.Codeforces Round 853 (Div. 2)(C,D)75.牛客练习赛109(C,D)76.AtCoder Beginner Contest 291(Sponsored by TOYOTA SYSTEMS)(D,E,F)77.Educational Codeforces Round 143 (Rated for Div. 2)(A,C,D)78.Codeforces Round #852 (Div. 2)(C,D)79.Educational Codeforces Round 118 (Rated for Div. 2)(D,E)80.AtCoder Beginner Contest 236(D,E,F)81.Codeforces Round #850 (Div. 2, based on VK Cup 2022 - Final Round)(B,D)82.Codeforces Round #848 (Div. 2)(B,C,D)83.TypeDB Forces 2023 (Div. 1 + Div. 2, Rated, Prizes!) (B,C,D) 84.Codeforces Round #846 (Div. 2)(B,E)
85.Educational Codeforces Round 142 (Rated for Div. 2)(C,D)
86.2023牛客寒假算法基础集训营687.Codeforces Round #845 (Div. 2) and ByteRace 2023(A,B,C)88.2023牛客寒假算法基础集训营5 89.2023牛客寒假算法基础集训营3 90.2023牛客寒假算法基础集训营291.2023牛客寒假算法基础集训营192.Educational Codeforces Round 120 (Rated for Div. 2) C,D93.AtCoder Beginner Contest 254(C,D,E,F) Educational Codeforces Round 142 (Rated for Div. 2)(C,D)
C
这道题的大意是题目大意是给你一个任意的排序,我们要把这个排序通过任意个操作变成一个有序的排序
操作是,选择任意两个数,大的那一个放在后面,小的那一个放在后面,问最少多少个操作才可以把这个排序变成有序的
在vp的过程中,感觉快知道答案了,但还是差一点,很迷糊,一团乱麻
先理一理
对于这些数,我感性的认为(对于此时n=5)
如果要选择两个数,1和5,在一起,2和4在一起进行操作
我们可以判断我们可以设一个l,一个r,l和r是从1到l-1的是符合顺序的,r-1到n是符合顺序的
什么是符合顺序的,我们在遍历的过程中,还有一个i,l要符合顺序就要让al和i是一样的,ar和n-i+1
如果不符合顺序,那么一定会需要i次操作
因为如果i和n-i+1这一对需要进行操作i个操作,因为如果进行了这一个操作,把i变到第一个了,我们要把1变到第一个位置,那么就还需要i-1个操作,总共i个操作
#include <iostream>
#include <vector>
using namespace std;
const int maxn=2e5+10;
#define int long long
int t,n,a[maxn],pos[maxn];
bool vis[maxn];
void solve()
{
cin>>n;
for (int i=1;i<=n;i++)
{
cin>>a[i];
vis[i]=false;
}
int ans=0;
int l=1,r=n;
for (int i=1;l<r&&i<=n;i++)
{
while (vis[a[l]])
{
l++;
}
while (vis[a[r]])
{
r--;
}
if (l>=r) break;
if (a[l]!=i||a[r]!=n-i+1)//l,或者r至少有一个不满足,就需要操作了
{
ans=i;
}
vis[i]=vis[n-i+1]=true;//不管操作没操作,到这儿都一定是让i和n-i+1满足条件了
}
cout<<ans<<'\n';
return ;
}
signed main ()
{
cin>>t;
while (t--)
{
solve();
}
system ("pause");
return 0;
}
D
这个题的
先讲一下题目大意吧
这个是有n个长度为m的排序
对于ai(排序)和aj(排序)的乘积可以得到一个新的排序
新的排序就是
每种排序的值为从1到m的过程中,1到x是连续的1 2 3 。。。 x这种下标的数值一样的长度
问对于每一个排序,可以和某一个排序的值最大是多少
后来看了一些题解
要想
我们可以看成
那么我们可以理解为
可以看出两个排序的乘积值越大,可以看成是,一个是原来的排序,一个将下标和值变一下,其中最大值为这两个排序的最长公共前缀和
求最长公共前缀和可以用到字典树
字典树一定要开大一点,我这道题数据是
具体操作看代码
#include <iostream>
#include <vector>
using namespace std;
const int maxn=1000007;
#define int long long
int n,m;
int tr[maxn][11];
int tot;
int t;
void insert(vector<int> s)
{
int rt=0;
for (int j=0;j<m;j++)
{
if (!tr[rt][s[j]])
{
tr[rt][s[j]]=++tot;
}
rt=tr[rt][s[j]];
}
return ;
}
int search(vector<int> s)
{
int rt=0;
for (int j=0;j<m;j++)
{
if (!tr[rt][s[j]]) return j;//如果这一个数没有找到,直接输出这一个的位置,因为下标是0到m-1的
rt=tr[rt][s[j]];
}
return m;
}
vector<int>a[maxn],rev;
void solve()
{
cin>>n>>m;
rev=vector<int>(m);
for (int i=0;i<n;i++)
{
a[i].clear();
for (int j=0;j<m;j++)
{
int x;
cin>>x;
x--;//下标是从0到m-1
a[i].push_back(x);
rev[x]=j;
}
insert(rev);//rev为翻转
}
for (int i=0;i<n;i++)
{
cout<<search(a[i])<<' ';
}
cout<<'\n';
for (int i=0;i<=tot;i++)//注意下一次可能会用到,要清除字典树
{
for (int j=0;j<10;j++)
{
tr[i][j]=0;
}
}
tot=0;
return ;
}
signed main ()
{
cin>>t;
while (t--)
{
solve();
}
system ("pause");
return 0;
}
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· winform 绘制太阳,地球,月球 运作规律
· AI与.NET技术实操系列(五):向量存储与相似性搜索在 .NET 中的实现
· 超详细:普通电脑也行Windows部署deepseek R1训练数据并当服务器共享给他人
· 【硬核科普】Trae如何「偷看」你的代码?零基础破解AI编程运行原理
· 上周热点回顾(3.3-3.9)