这对我想做的事情来说太长了。有什么办法可以让这更快吗?
编辑抱歉,我一直遇到质量邮政编码问题,所以我只发布了最低限度。
我想做的是一个奥马哈扑克净值计算器。
A-它需要我们给他的 4 张牌(myhand[4]),然后检查所有可能的手牌组合,看看是否有任何重复。
B-如果有任何重复,它想删除包含该手牌的向量行(所以当我们稍后计算赢率时,我们不会针对某人不可能拥有的手牌进行计算)
int myhand[4] = { 3, 12, 22, 10 };
vector<vector<int> > vec(4, vector<int>(270725));
for (int m = 0; m < vec[0].size(); m++) { // A
for (int k = 0; k < 4; k++) {
for (int j = 0; j < 4; j++)
if (myhand[k] == vec[j][m]) {
for (int i = 0; i < 4; i++) {
vec[i].erase(vec[i].begin() + m); // B
}
k = 0;
j = 0;
break;
}
}
}
有没有办法让这段代码更有效率?
谢谢,凯文