【正经题解】机器翻译
2024-03-15 10:19:54
发布于:美国
17阅读
0回复
0点赞
主要思路是:
使用一个 来表示内存。
依次读如数据,判断是否在内存中( )。如果不在,就需要查词典,然后加入内存、将答案 。
如果内存满了,就把最先进入内存的单词删掉( )
#include <vector>
#include <iostream>
#include <algorithm>
int main() {
int m, n, t, ans = 0;
std::cin >> m >> n;
std::vector<int> v; // 用来表示内存
while (std::cin >> t) {
if (std::find(v.begin(), v.end(), t) == v.end()) { // 如果不在内存中
v.push_back(t); // 加入内存
++ans;
}
if (v.size() > m) // 内存满了
v.erase(v.begin()); // 把第一个单词删掉
}
std::cout << ans << std::endl;
}
这里空空如也
有帮助,赞一个