北邮考研复试 | 机试 | 2014年北邮计算机院机试(下午)

2024-02-05 23:38

本文主要是介绍北邮考研复试 | 机试 | 2014年北邮计算机院机试(下午),希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

文章目录

  • A 中位数
    • 题目链接
    • 题目描述
    • 输入格式
    • 输出格式
    • 输入样例
    • 输出样例
    • AC代码
  • B 内存分配
    • 题目链接
    • 题目描述
    • 输入格式
    • 输出格式
    • 输入样例
    • 输出样例
    • AC代码
  • C 图像识别
    • 题目链接
    • 题目描述
    • 输入格式
    • 输出格式
    • 输入样例
    • 输出样例
    • AC代码
  • D 汇编
    • 题目链接

A 中位数

题目链接

中位数单独题解
OJ地址

题目描述

给定个长度为N的非降数列,求数列的中位数,
中位数:当数列的项数N为奇数时,处f中间位置的变量值即为中位数:当N为偶数时,中位数则为处于中间位置的两个数的平均数。

输入格式

输入数据第一行是一个整数T(1 <T < 100),表示测试数据的组数。对三每组测试数据:
第一行是一个正整数N(1<N< 100),表示数列长度。
第二行有N个整数,数之间用空格限开,所有的整数都不超过105,表示这个数列。

输出格式

对于每组测试数据,输出数列的中位数。请不要输出小数点末尾多余的0。

输入样例

2
4
1 1 2 2
5
1 1 2 2 3

输出样例

1.5
2

AC代码

    #include<bits/stdc++.h>#define For(i,start,end) for(int i=start;i<end;i++)#define MAXN 110using namespace std;int arr[MAXN];int main(){int t,n;scanf("%d",&t);while(t--){scanf("%d",&n);For(i,1,n+1){scanf("%d",&arr[i]);}if(n%2){printf("%d\n",arr[n/2+1]);}else{int sum = (arr[n/2]+arr[n/2+1]);if(sum%2){printf("%.1f\n",sum/2.);}else{printf("%d\n",sum/2);}}}return 0;}

B 内存分配

题目链接

内存分配单独题解
OJ地址

题目描述

在操作系统中,内存分配是非常重要的工作。
已知内存空间由N个内存块组成,这些内存块从1到N编号。
进行内存分配时,操作系统将选择一块大小足够的内存全部分配给请求内存的进程。例如,当进程请求10MB的内存时,操作系统必须向该进程分配一个不小于10MB的内存块。内存块不能重复分配。

操作系统有三种基本的分配方式,分别为:
首次适应:从1号到N号内存块依次查找,自到找到第一 块足够大的月未分配出去的内存块,将其分配绘进程。
最佳适应:找到当前未分配出去且大小足够的内存块中最小的内存块分配给进程。
最差适应:找到当前未分配出去且大小足够的内有块中最小的内有块分配给进程。

其中,最佳适应方式是应用最为广泛。现在,操作系统要依次交理M个进程的内存清求,请按照最佳适应方式分配内存,并输出相应的内存块的大小。如果,没有大小足够的内存块可以满足兰前清求,则输出"NULL"(不包含引号),并跳过该诗求

输入格式

输入数据的第一行是测试数据组数T(T ≤ 20)每组数据由4行构成:

第一行为一个整数N(1≤N≤100);表示有N个内存块
第二行有N个整数,第i个整数表示第i块内存块的大小
第三行为一个整数M(1≤M≤100),表示有M个请求
第四行有M个整数,表示进程所请求的内存空间。

输出格式

每组数据输出一行,每行有M个数,表示操作系统采月最住适应方式,依次分配给进程的内存块大小;
如果没有可用内存块,输出"NULL"(不包含引号)
不要输山多余的行尾空格。

输入样例

    247 5 10 324 643 5 9 1035 12 6

输出样例

    5 75 NULL 9

AC代码

#include<bits/stdc++.h>#define For(i,start,end) for(i=start;i<end;i++)#define MAXN 110using namespace std;typedef struct cache{int size;bool flag;cache(int size=0,bool flag=false):size(size),flag(flag){}bool operator <(const cache &b) const{return size<b.size;}}Cache;vector<Cache> ca;int main(){int t,n,m,request,size;int i,j;scanf("%d",&t);while(t--){ca.clear();scanf("%d",&n);For(i,0,n){scanf("%d",&size);ca.push_back(Cache(size,false));}scanf("%d",&m);sort(ca.begin(),ca.end());For(j,0,m){scanf("%d",&request);For(i,0,n){if(ca[i].flag==false&&request<=ca[i].size){ca[i].flag=true;break;}}if(i!=n){printf("%d",ca[i].size);}else{printf("NULL");}if(j!=m-1){printf(" ");}}printf("\n");}return 0;}

C 图像识别

题目链接

图像处理单独题解
OJ地址

题目描述

在图像识别中,我们经常需要分析特定图像中的些特征,而其中很重要的点就是识别出图像的多个区域。在这个问题中,我们将给定一幅N x M的图像,其中每个1 x 1的点都用一个[0, 255]的值来表示他的RGB颜色。如果两个相邻的像素点颜色差值不超过D.我们就认为这两个像素点属于豆一个区域。对于一个像素点(x,y),以下这8个点(如果存在)是与它相邻的: (x 一1,y一1),(x 一1,y),(x一1,y + 1),(x,y 一1),(x,y + 1),(x + 1,y- 1),(x + 1,y),(x +1,y+ 1)。

你的任务是写一个程序,分辨出给定图像中一共被分为多少个区域。

输入格式

输入数据包含多组测试数据。

输入的第一行是一个整数T (T ≤ 100),表示测试效据的组数,

每组测试数据的第一行是三个整数N,M,D(1≤N,M≤100, 0≤D≤255),意义知上所述。

接下来N行,每行M个整数,表示给定图像的每人像素点颜色。

输出格式

对于每组测试数据输出一行,即图像中的区域数量

输入样例

    23 3 01 1 10 1 00 1 03 4 110 11 12 139 8 7 62 3 4 5

输出样例

    31

AC代码

    #include<bits/stdc++.h>#define For(i,start,end) for(int i=start;i<end;i++)#define MAXN 100using namespace std;typedef struct node{int x,y;node(int x,int y):x(x),y(y){}}Node;int Map[MAXN][MAXN];int vis[MAXN][MAXN];int main(){int t,n,m,d;scanf("%d",&t);while(t--){scanf("%d%d%d",&n,&m,&d);memset(vis,0,sizeof vis);For(i,0,n){For(j,0,m){scanf("%d",&Map[i][j]);}}queue<Node> q;int cnt=0;For(x,0,n)For(y,0,m)if(vis[x][y]==0){cnt++;vis[x][y]=1;q.push(Node(x,y));while(!q.empty()){Node tmp=q.front();q.pop();int cx=tmp.x;int cy=tmp.y;int v = Map[cx][cy];for(int i=cx-1;i<=cx+1;i++){for(int j=cy-1;j<=cy+1;j++){if(!(cx==i && cy==j) && vis[i][j]==0){if(i>=0 && i<n && j>=0 && j<m && abs(v-Map[i][j])<=d){vis[i][j]=1;q.push(Node(i,j));}}}}}}printf("%d\n",cnt);}return 0;}

D 汇编

题目链接

OJ地址
12

这篇关于北邮考研复试 | 机试 | 2014年北邮计算机院机试(下午)的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/682523

相关文章

计算机毕业设计 大学志愿填报系统 Java+SpringBoot+Vue 前后端分离 文档报告 代码讲解 安装调试

🍊作者:计算机编程-吉哥 🍊简介:专业从事JavaWeb程序开发,微信小程序开发,定制化项目、 源码、代码讲解、文档撰写、ppt制作。做自己喜欢的事,生活就是快乐的。 🍊心愿:点赞 👍 收藏 ⭐评论 📝 🍅 文末获取源码联系 👇🏻 精彩专栏推荐订阅 👇🏻 不然下次找不到哟~Java毕业设计项目~热门选题推荐《1000套》 目录 1.技术选型 2.开发工具 3.功能

ZOJ Monthly, August 2014小记

最近太忙太忙,只能抽时间写几道简单题。不过我倒是明白要想水平提高不看题解是最好的了。 A  我只能死找规律了,无法证明 int a[50002][2] ;vector< vector<int> > gmax , gmin ;int main(){int n , i , j , k , cmax , cmin ;while(cin>>n){/* g

2014 Multi-University Training Contest 8小记

1002 计算几何 最大的速度才可能拥有无限的面积。 最大的速度的点 求凸包, 凸包上的点( 注意不是端点 ) 才拥有无限的面积 注意 :  凸包上如果有重点则不满足。 另外最大的速度为0也不行的。 int cmp(double x){if(fabs(x) < 1e-8) return 0 ;if(x > 0) return 1 ;return -1 ;}struct poin

2014 Multi-University Training Contest 7小记

1003   数学 , 先暴力再解方程。 在b进制下是个2 , 3 位数的 大概是10000进制以上 。这部分解方程 2-10000 直接暴力 typedef long long LL ;LL n ;int ok(int b){LL m = n ;int c ;while(m){c = m % b ;if(c == 3 || c == 4 || c == 5 ||

2014 Multi-University Training Contest 6小记

1003  贪心 对于111...10....000 这样的序列,  a 为1的个数,b为0的个数,易得当 x= a / (a + b) 时 f最小。 讲串分成若干段  1..10..0   ,  1..10..0 ,  要满足x非递减 。  对于 xi > xi+1  这样的合并 即可。 const int maxn = 100008 ;struct Node{int

机试算法模拟题 服务中心选址

题目描述 一个快递公司希望在一条街道建立新的服务中心。公司统计了该街道中所有区域在地图上的位置,并希望能够以此为依据为新的服务中心选址:使服务中心到所有区域的距离的总和最小。 给你一个数组positions,其中positions[i] = [left, right] 表示第 i 个区域在街道上的位置,其中left代表区域的左侧的起点,right代表区域的右侧终点,假设服务中心的位置为loca

计算机视觉工程师所需的基本技能

一、编程技能 熟练掌握编程语言 Python:在计算机视觉领域广泛应用,有丰富的库如 OpenCV、TensorFlow、PyTorch 等,方便进行算法实现和模型开发。 C++:运行效率高,适用于对性能要求严格的计算机视觉应用。 数据结构与算法 掌握常见的数据结构(如数组、链表、栈、队列、树、图等)和算法(如排序、搜索、动态规划等),能够优化代码性能,提高算法效率。 二、数学基础

java计算机毕设课设—停车管理信息系统(附源码、文章、相关截图、部署视频)

这是什么系统? 资源获取方式在最下方 java计算机毕设课设—停车管理信息系统(附源码、文章、相关截图、部署视频) 停车管理信息系统是为了提升停车场的运营效率和管理水平而设计的综合性平台。系统涵盖用户信息管理、车位管理、收费管理、违规车辆处理等多个功能模块,旨在实现对停车场资源的高效配置和实时监控。此外,系统还提供了资讯管理和统计查询功能,帮助管理者及时发布信息并进行数据分析,为停车场的科学

华为OD机试真题-学生方阵-2024年OD统一考试(E卷)

题目描述 学校组织活动,将学生排成一个矩形方阵。 请在矩形方阵中找到最大的位置相连的男生数量。这个相连位置在一个直线上,方向可以是水平的,垂直的,成对角线的或者呈反对角线的。 注:学生个数不会超过10000 输入描述 输入的第一行为矩阵的行数和列数, 接下来的 n行为矩阵元素,元素间用""分隔。 输出描述 输出一个整数,表示矩阵中最长的位

《计算机视觉工程师养成计划》 ·数字图像处理·数字图像处理特征·概述~

1 定义         从哲学角度看:特征是从事物当中抽象出来用于区别其他类别事物的属性集合,图像特征则是从图像中抽取出来用于区别其他类别图像的属性集合。         从获取方式看:图像特征是通过对图像进行测量或借助算法计算得到的一组表达特性集合的向量。 2 认识         有些特征是视觉直观感受到的自然特征,例如亮度、边缘轮廓、纹理、色彩等。         有些特征需要通