vector.push_back()是深拷贝; cout后不跟endl会出现程序卡住的情况(vs);
代码如下: `#include #include #include #include #include using namespace std;
int main() { int n; cin >> n; vector<vector > v; vector tmp; int* cmd = (int*)calloc(n, sizeof(int)); char temp; for (int k = 0,l,i;k < n;k++,tmp.clear()) {
for (l = 0;l < 64;l++) {
cin >> temp;
tmp.push_back(temp);
}
l = 0;
while (l < v.size()) {
for (i = 0;i < 64;i++)
if (v[l][i] != tmp[i])break;
if (i == 64) {
*(cmd + l) += 1;
cout << *(cmd + l) << endl;
break;
}
l++;
}
if (l == v.size()) {
v.push_back(tmp);
*(cmd + l) += 1;
cout << *(cmd + l)<<endl;
}
}
return 0;
}`