Leetcode每日一题——1585

news/2024/11/25 10:49:11/

Leetcode每日一题——1585

题目描述:
在这里插入图片描述
思路:
我们可以选中一个连续的字符串,对其进行升序操作。也就是说,我们可以选择任意一段区间进行排序,我们可以分解成若干个长度为2的子区间的操作之和。也就是说,我们每次可以选择一个相邻的逆序对进行交换,问t能否由s这样转而来。
后面就简单了,对于每个字符,统计前面比他小的数less和前面比他大的数greater,less上s要更小,greater上t要更小一点。

class Solution {
public:bool isTransformable(string s, string t) {int len = s.length();vector<vector<int>> vs(10), vt(10);vector<vector<int>> less_s(10), less_t(10);vector<vector<int>> get_s(10), get_t(10);for(int i=0;i<len;i++){int ks= i, kt = i, ms = i, mt = i;for(int j=0;j<10;j++){if(j>=s[i]-'0')ks -= vs[j].size();elsems -= vs[j].size();}for(int j=0;j<10;j++){if(j>=t[i]-'0')kt -= vt[j].size();elsemt -= vt[j].size();}less_s[s[i]-'0'].push_back(ks);less_t[t[i]-'0'].push_back(kt);get_s[s[i]-'0'].push_back(ms);get_t[t[i]-'0'].push_back(mt);vs[s[i]-'0'].push_back(i);vt[t[i]-'0'].push_back(i);}for(int i=0;i<10;i++){if(vs[i].size() != vt[i].size()) return false;}for(int i=0;i<10;i++){for(int j=0;j<vs[i].size();j++){if(less_s[i][j] > less_t[i][j] || get_s[i][j] < get_t[i][j]){return false;}}}return true;}
};

结果:
在这里插入图片描述


http://www.ppmy.cn/news/790783.html

相关文章

ZCMU--1585: 面试

题目描述 五个人去面试&#xff0c;他们之前已经经历5次考试&#xff0c;请你帮助面试官按之前的平均成绩初步筛选。 输入 人名&#xff08;空格&#xff09;考试成绩&#xff08;空格间隔&#xff09;&#xff08;五个人为五行&#xff09; 输出 “Name&#xff1a;”人名…

1585•丢失的筷子 解题报告

题目描述 由于小b的父母都要上班&#xff0c;于是看护妹妹的责任就责无旁贷了&#xff0c;但是小b还要上网课呢&#xff0c;刚好妹妹在学数数&#xff0c;于是小b拿出家里的筷子给妹妹玩&#xff0c;每 双筷子的长度各不相同&#xff0c;妹妹也玩的不亦乐乎。 等小b上完…

艾美捷CpG ODN——ODN 1585说明书

艾美捷CpG ODN系列——ODN 1585&#xff1a;CpG寡脱氧核苷酸&#xff08;A型&#xff09;优化用于NK细胞活化&#xff0c;具有混合的磷酸二酯酶/硫代磷酸酯主链。小鼠TLR9&#xff08;Toll样受体9&#xff09;的特异性配体。 艾美捷CpG ODN 丨ODN 1585化学性质&#xff1a; 序…

1585 例题1 Amount of Degrees(Ural 1057 LOJ10163) 进制转换纯枚举从40分到60分 数位DP100分 初次使用string

总目录 在线测评地址(ybt) 在线测评地址(LOJ) 看完题目&#xff0c;感觉就是一个进制转换。 样例数据如下&#xff1a; 17对应2进制10001 数1的个数有2个 18对应2进制10010 数1的个数有2个 20对应2进制10100 数1的个数有2个该题有个极端的测试数据&#xff1a; 1 2^31-1 …

UVA - 1585 Score

Description There is an objective test result such as “OOXXOXXOOO”. An ‘O’ means a correct answer of a problem and an ‘X’ means a wrong answer. The score of each problem of this test is calculated by itself and its just previous consecutive ‘O’s on…

装修知识笔记

文章目录 衣柜要不要到顶?办公柜 改水电布局家具吊顶吊顶种类吊顶架子 隔墙 门如何安装门电视背景墙和电视柜悬空电视柜 采光卫生间防水和下水 非专业专修人员&#xff0c;只是喜爱&#xff0c;毕竟多懂一点&#xff0c;自己的家就有机会舒适一些。 衣柜 为什么放到最前面&am…

以阻塞方式对IO文件进行读取

以阻塞方式对IO文件进行读取(test.c读取&#xff0c;test2.c发送数据) 实验结果 执行test.c生成的pro1可执行文件&#xff0c;光标显示处于阻塞状态 执行test2.c生成的pro2可执行文件&#xff0c;test.c处打印 hello dhl 三级标题test.c #include <stdlib.h> #inclu…

十三亿人都能看懂的导航栏吸顶+tab

设计思路 要想出现滚动效果,就需要让里面的内容高度大于外面内容的高度\ <body> <div class"box"> <div class"top"> <img src"../img/ad.jpg" alt""> </div> <…