复试day32
1.单词

2.翻译
近年来,预训练模型在人工智能研究中发挥了重要作用。研究人员通常首先使用大规模数据集训练一个通用模型,然后在特定任务上对该模型进行微调。通过这种方式,模型可以利用在预训练阶段学习到的知识,从而提高下游任务的性能。例如,在自然语言处理领域,大量语言模型已经通过海量文本数据进行预训练,并在文本分类、机器翻译和问答系统等任务中取得了优异表现。预训练与微调的框架不仅减少了训练成本,还提高了模型的泛化能力。因此,这种方法已经成为现代人工智能研究的重要范式。
3.代码
125回文或镜面回文
#include<bits/stdc++.h>
using namespace std;
bool is_huiwen(string a)
{
string b=a;
string c=a;
reverse(b.begin(),b.end());
return b==c;
}
bool is_mirror(string a)
{
bool ok=true;
for(int i=0,j=a.size()-1;i<j;i++,j--)
{
if(a[i]=='A'&&a[j]=='A')
continue;
else if(a[i]=='M'&&a[j]=='M')
continue;
else if(a[i]=='Y'&&a[j]=='Y')
continue;
else if(a[i]=='O'&&a[j]=='O')
continue;
else if(a[i]=='1'&&a[j]=='1')
continue;
else if(a[i]=='H'&&a[j]=='H')
continue;
else if(a[i]=='T'&&a[j]=='T')
continue;
else if(a[i]=='I'&&a[j]=='I')
continue;
else if(a[i]=='U'&&a[j]=='U')
continue;
else if(a[i]=='V'&&a[j]=='V')
continue;
else if(a[i]=='8'&&a[j]=='8')
continue;
else if(a[i]=='X'&&a[j]=='X')
continue;
else if(a[i]=='W'&&a[j]=='W')
continue;
else if((a[i]=='Z'&&a[j]=='5')||(a[i]=='5'&&a[j]=='Z'))
continue;
else if((a[i]=='S'&&a[j]=='2')||(a[i]=='2'&&a[j]=='S'))
continue;
else if((a[i]=='E'&&a[j]=='3')||(a[i]=='3'&&a[j]=='E'))
continue;
else if((a[i]=='J'&&a[j]=='L')||(a[i]=='L'&&a[j]=='J'))
continue;
else ok=false;
}
if(ok)
return true;
else
return false;
}
int main()
{
string a;
while(cin>>a)
{
if(is_huiwen(a))
{
if(is_mirror(a))
{
cout<<a<<" -- is a mirrored palindrome." <<endl;
}
else
cout<<a<<" -- is a regular palindrome."<<endl;
}
else if(is_mirror(a))
{
cout<<a<<" -- is a mirrored string." <<endl;
}
else
cout<<a<<" -- is not a palindrome." <<endl;
cout<<endl;
}
return 0;
}暴力解
127.我素故我在
#include<bits/stdc++.h>
using namespace std;
// 判断一个数是否是素数
bool is_prime(int num) {
if (num < 2) return false;
if (num == 2) return true;
if (num % 2 == 0) return false;
// 只需要检查到平方根,优化效率
for (int i = 3; i * i <= num; i += 2) {
if (num % i == 0) return false;
}
return true;
}
// 生成所有T维纯素数并返回
vector<int> generate_pure_prime(int T) {
// 1维纯素数(初始种子)
vector<int> res = {2, 3, 5, 7};
// 从2维开始,递推生成更高维
for (int dim = 2; dim <= T; dim++) {
vector<int> new_res;
// 遍历上一维的所有纯素数,末尾添加1/3/7/9(偶数/5结尾不可能是素数)
for (int num : res) {
for (int last : {1, 3, 7, 9}) {
int new_num = num * 10 + last;
// 新数是素数 → 加入当前维的纯素数列表
if (is_prime(new_num)) {
new_res.push_back(new_num);
}
}
}
res = new_res; // 更新为当前维的纯素数
}
// 排序(保证输出从小到大)
sort(res.begin(), res.end());
return res;
}
int main() {
int n;
cin >> n;
while (n--) {
int T;
cin >> T;
// 生成T维纯素数
vector<int> pure_primes = generate_pure_prime(T);
// 按要求输出(从小到大)
for (int i = 0; i < pure_primes.size(); i++) {
cout << pure_primes[i]<<endl;
}
}
return 0;
}
采用素数维数添加方法,思路新颖
// 遍历上一维的所有纯素数,末尾添加1/3/7/9(偶数/5结尾不可能是素数)
复习就题目
AtomGit 是由开放原子开源基金会联合 CSDN 等生态伙伴共同推出的新一代开源与人工智能协作平台。平台坚持“开放、中立、公益”的理念,把代码托管、模型共享、数据集托管、智能体开发体验和算力服务整合在一起,为开发者提供从开发、训练到部署的一站式体验。
更多推荐



所有评论(0)