巴音郭楞蒙古自治州网站建设_网站建设公司_UI设计_seo优化
2026/1/11 20:14:30 网站建设 项目流程

2025年山东大学计算机考研复试机试真题

2025年山东大学计算机考研复试上机真题

历年山东大学计算机考研复试上机真题

历年山东大学计算机考研复试机试真题

更多学校完整题目开源地址:https://gitcode.com/u014339447/pgcode

百度一下pgcode即可查看,输入 “学校名称” 即可筛选该校历年机试真题,包括真题、ac代码、解题思路、视频讲解。

插入乘号-山东大学

题目描述

给定一个长度为n nn的数字串,向里面插入k kk个乘号( k < n ) (k < n)(k<n), 输出最大值

输入格式

第一行输入两个整数n nnk kkn nn为数字串长度,k kk为插入乘号的个数,1 ≤ n ≤ 10 1 \leq n \leq 101n10

第二行输入长度为n nn的一个数字序列

输出格式

输出插入k kk个乘号后的最大值

输入样例
4 2 1234
输出样例
144
#include<stdio.h>#include<string.h>#include<stdlib.h>#include<string>typedeflonglongLL;chars[11];LL max_num=0;intvis[11];intn,k;/* 这个vis[i]是表示在某个数位之后插入乘号 */LLget_num(intx,inty){LL var=0;for(inti=x;i<=y;i++){var=var*10+s[i]-'0';}returnvar;}voiddfs(intcnt){if(cnt==0){LL chengji=1;intfront=0;intrear;for(inti=0;i<n-1;++i){if(vis[i]==1){rear=i;chengji*=get_num(front,rear);front=i+1;}}chengji*=get_num(front,n-1);if(chengji>max_num)max_num=chengji;return;}else{for(inti=0;i<n-1;++i){if(!vis[i]){vis[i]=1;dfs(cnt-1);vis[i]=0;}}}}intmain(){scanf("%d %d",&n,&k);scanf("%s",&s);dfs(k);printf("%lld",max_num);}

字符串的差-山东大学

题目描述

输入两个字符串s 1 s1s1s 2 s2s2,输出两字符串的差s 1 − s 2 s1 - s2s1s2

输入样例
abcd ad
输出样例
bc
#include<iostream>#include<string>#include<unordered_set>usingnamespacestd;intmain(){string s1,s2;cin>>s1>>s2;unordered_set<char>set_s2(s2.begin(),s2.end());string result="";for(charc:s1){if(set_s2.find(c)==set_s2.end()){result+=c;}}cout<<result<<endl;}

最长递减子序列-山东大学

题目描述

输入数字n nn,和n nn个整数,输出该数字串中的最长递减序列

输入样例
8 9 4 3 2 5 4 3 2
输出样例
9 5 4 3 2
#include<bits/stdc++.h>usingnamespacestd;constintN=1e6+10;inta[N],b[N],c[N];intmain(){ios::sync_with_stdio(false);cin.tie(0);cout.tie(0);intn;cin>>n;for(inti=1;i<=n;i++){cin>>c[i];a[n-i+1]=c[i];}intlen=1;b[1]=a[1];c[1]=1;for(inti=2;i<=n;i++){if(a[i]>b[len]){b[++len]=a[i];c[i]=len;}else{autoit=lower_bound(b+1,b+1+len,a[i]);b[(it-b)]=a[i];c[i]=(it-b);}}// cout<<len<<endl;for(inti=n;i>=1;i--){if(c[i]==len){cout<<a[i]<<' ';len--;}}return0;}

质数的个数-山东大学

题目描述

[ 1 , n ] [1, n][1,n]之间的质数的个数。

输入格式

输入一个整数n nn1 ≤ n ≤ 1 e 7 1 \leq n \leq 1e71n1e7

输出格式

输出一个整数,表示[ 1 , n ] [1, n][1,n]之间的质数的个数

输入样例
10
输出样例
4
#include<iostream>usingnamespacestd;intmain(){intn,count=0;cin>>n;if(n<=1){cout<<0<<endl;return0;}count=1;// 2是唯一偶质数// 遍历3到n的所有奇数for(intnum=3;num<=n;num+=2){boolhasFactor=false;for(inti=3;i*i<=num;i+=2){if(num%i==0){hasFactor=true;break;}}if(!hasFactor)count++;}cout<<count<<endl;return0;}

需要专业的网站建设服务?

联系我们获取免费的网站建设咨询和方案报价,让我们帮助您实现业务目标

立即咨询