leetcode859
class Solution {
public:
bool buddyStrings(string A, string B) {
if (A.length() != B.length()) {
return false;
}
// 交换两个字符使得AB相同
// 检测A和B中不同的字符位置个数
int diff_cnt = ;
int idxs[] = { , };
for (int i = ; i < A.length(); ++i) {
if (A[i] != B[i]) {
idxs[diff_cnt++] = i; }
}
if (diff_cnt == ) {
// 没有不同
// 看A里是否有相同的字符串
map<char, bool> m;
for (auto &ch : A) {
if (m[ch]) {
return true;
}
else {
m[ch] = true;
}
}
return false;
}
if (diff_cnt != ) {
return false;
}
swap(A[idxs[]], A[idxs[]]);
return A == B;
}
};
网上的答案,以备复习使用。
leetcode859的更多相关文章
- [Swift]LeetCode859. 亲密字符串 | Buddy Strings
Given two strings A and B of lowercase letters, return true if and only if we can swap two letters i ...
- Leetcode859.Buddy Strings亲密字符串
给定两个由小写字母构成的字符串 A 和 B ,只要我们可以通过交换 A 中的两个字母得到与 B 相等的结果,就返回 true :否则返回 false . 示例 1: 输入: A = "ab& ...
随机推荐
- IT NEWS WebSite
1.http://stackoverflow.com/ 2.google news 订阅 3.(IOS/Android/Java/Html5/JavaScript..)weekly 4.http:// ...
- java中守护线程的一些概念和用法
网上的资料中,守护线程的功能一般都是“只要当前JVM实例中尚存任何一个非守护线程没有结束,守护线程就全部工作:只有当最后一个非守护线程结束是,守护线程随着JVM一同结束工作,Daemon作用是为其他线 ...
- BZOJ2199 奶牛议会 【2-sat】
BZOJ2199 奶牛议会 Description 由于对Farmer John的领导感到极其不悦,奶牛们退出了农场,组建了奶牛议会.议会以"每头牛 都可以获得自己想要的"为原则, ...
- 深入了解 WPF Dispatcher 的工作原理(Invoke/InvokeAsync 部分)
深耕 WPF 开发的各位程序员大大们一定避不开使用 Dispatcher.跨线程访问 UI 当然免不了用到它,将某个任务延迟到当前任务之后执行也会用到它.Dispatcher.Invoke.Dispa ...
- Hadoop1.x安装配置文件及参数说明
一.常用文件及参数说明Core-site.xml 配置Common组件的属性 hdfs-site.xml 配置hdfs参数,比如备份数目,镜像存放路径 Mapred-sit ...
- mysql 随机选取一条记录
要从tablename表中随机提取一条记录,大家一般的写法就是:SELECT * FROM tablename ORDER BY RAND() LIMIT 1. 1 2 3 4 5 6 7 8 9 1 ...
- SpringBoot @ConfigurationProperties报错
idea报错如下: Not registered via @EnableConfigurationProperties or marked as Spring component less... (C ...
- UVA11806 Cheerleaders
题意 PDF 分析 如果要求是某行某列没有石子很好算,就一个组合数. 然后要求某行某列有,就用容斥原理就行了. 时间复杂度\(O(k^2 + 16T)\) 代码 #include<iostrea ...
- WebBrower使用 Http 代理访问网页
public struct Struct_INTERNET_PROXY_INFO { public int dwAccessType; public IntPtr proxy; public IntP ...
- grpc gateway 使用以及docker compose 集成
1. grpc gateway 安装 参考,比较简单,有需要的依赖可以参考相资料 mkdir tmp cd tmp git clone https://github.com/google/protob ...