这套笔试题的编程题很简单,感觉没什么可以写的题解的


[编程题]大数加法

注意下负号的情况

#include <bits/stdc++.h>
using namespace std;
typedef long long ll;
const int maxn=1000050;
char a[150],b[150],ans[150];
int main()
{scanf("%s%s",a+1,b+1);int l1=strlen(a+1);int l2=strlen(b+1);int x=0,y=0;if(a[2]=='-'){for(int i=3;i<l1;i++) x=x*10+a[i]-'0';x=-x;}else{for(int i=2;i<l1;i++) x=x*10+a[i]-'0';}if(b[2]=='-'){for(int i=3;i<l2;i++) y=y*10+b[i]-'0';y=-y;}else{for(int i=2;i<l2;i++) y=y*10+b[i]-'0';}//printf("%d %d\n",x,y);x+=y;int flag=0,cnt=0;if(x==0) ans[++cnt]='0';if(x<0){flag=1;ans[++cnt]='-';x=-x;}//printf("%d\n",x);while(x){ans[++cnt]=x%10+'0';x/=10;}for(int i=1+flag;i<=(cnt+flag)/2;i++) swap(ans[i],ans[cnt-i+1+flag]);ans[0]=ans[++cnt]='\"';ans[++cnt]='\0';printf("%s\n",ans);return 0;
}

[编程题]回文子串

马拉车跑一遍就行

#include <bits/stdc++.h>
using namespace std;
typedef long long ll;
const int maxn=10050;
char Ma[maxn*2];
int Mp[maxn*2];
int Manacher(char s[],int len)
{int l = 0;Ma[l++] = '$';Ma[l++] = '#';for(int i = 0; i<len; i++){Ma[l++] = s[i];Ma[l++] = '#';}Ma[l] = 0;int mx = 0, id = 0;for(int i = 0; i<l; i++){Mp[i] = mx>i ? min(Mp[2*id-i],mx-i) : 1;while(i-Mp[i]>=0 && Ma[i+Mp[i]]==Ma[i-Mp[i]]) Mp[i]++;if(i+Mp[i]>mx){mx=i+Mp[i];id=i;}}return l;
}char s[maxn];int main()
{scanf("%s",s);int slen = strlen(s);int len = Manacher(s,slen),old=0;int ans=0;for(int i = 2; i<len; i++){ans+=Mp[i]/2;}printf("%d\n",ans);return 0;
}

[编程题]合并金币

石子归并模板题

#include <bits/stdc++.h>
using namespace std;
typedef long long ll;
const int maxn=50;
ll a[maxn],f[maxn][maxn],sum[maxn];
int main()
{int n;scanf("%d",&n);memset(f,125,sizeof(f));for(int i=1;i<=n;i++) scanf("%lld",&a[i]),f[i][i]=0,sum[i]=sum[i-1]+a[i];for(int len=2;len<=n;len++){for(int i=1,j=i+len-1;j<=n;i++,j++){for(int k=i;k<j;k++){f[i][j]=min(f[i][j],f[i][k]+f[k+1][j]+sum[j]-sum[i-1]);}}}printf("%lld\n",f[1][n]);return 0;
}

[编程题]最小唯一前缀

数据范围很小,直接暴力

#include<bits/stdc++.h>
#define rep(i, j, k) for(int i = j; i <= k; i++)
#define dep(i, j, k) for(int i = k; i >= j; i--)
#define pb push_back
using namespace std;
const double eps=1e-8;
typedef long long ll;
const int maxn = 150;
char s[maxn][maxn];
int len[maxn];
int vis[maxn];
int main()
{int n;scanf("%d",&n);for(int i=1;i<=n;i++){scanf("%s",s[i]+1);len[i]=strlen(s[i]+1);}for(int i=1;i<=n;i++){int f=0;for(int l=1;l<=len[i];l++){for(int j=1;j<=n;j++){if(i==j) continue;vis[j]=0;}int flag=0;for(int j=1;j<=n;j++){if(i==j||vis[j]) continue;if(l>len[j]){vis[j]=1;continue;}if(s[j][l]==s[i][l]){flag=1;}else vis[j]=1;}if(!flag){f=1;for(int j=1;j<=l;j++) printf("%c",s[i][j]);printf("\n");break;}}if(!f) printf("%s\n",s[i]+1);}
}

美团点评2020校招系统开发方向笔试题(编程题题解)相关推荐

  1. 美团点评2020校招运维方向笔试题(附答案)

    文章目录 TCP为什么需要第三次握手?第三次握手失败了会怎么样 请简述ssrf的原理.有哪些攻击方式及防御方法 OSPF(Open Shortest Path First)路由协议建立邻居的过程有那几 ...

  2. 金山办公2020校招C++开发工程师笔试题(一)

    链接:https://www.nowcoder.com/test/21499425/summary 11.框选线段 在二维平面坐标系中,已知存在一条线段(图中P1->p2)和一个矩形区域,编程计 ...

  3. 前端面试题:金山办公2020校招前端开发工程师笔试题(一)

    第一题: []==[]输出的结果为false: 首先,'=='运算符比较的是两个操作数是否相等,(这里不是指严格相等),两个操作数都是空数组,都是Object对象.但是对象的比较并非是值得比较,即使这 ...

  4. 小米2020校招软件开发工程师笔试题一

    1. 下列关于设计模式说法错误的是(B) A. 装饰器模式在实现过程中一般不会更改被封装对象的接口定义 B. 适配器模式以不改变被适配对象的接口定义为目的对其进行改造 C. 用饿汉方式实现的单例模式是 ...

  5. 小米2020校招软件开发工程师笔试题二

    https://blog.csdn.net/Yuudachi/article/details/104090132

  6. 金山办公2020校招前端开发工程师笔试题

    每天看看面试题,巩固知识,冲鸭 一 .写出如下代码的执行结果 考察了 promise,以及任务处理顺序.promise值得单写一篇文章,这里不过多赘述. new Promise((resolve) = ...

  7. 小红书2020校招测试开发后端笔试题卷一

    "记录一下做的小红书的笔试" 题目描述: 薯队长写了一篇笔记草稿,请你帮忙输出最后内容. 1.输入字符包括,"(" , ")" 和 &quo ...

  8. 今日头条2018校园招聘后端开发工程师(第二批)编程题 - 题解

    以前做过第三批的题目,今日头条2018校园招聘后端开发工程师(第三批)编程题 - 题解.这一场的题目偏技巧和算法,而第三批的题偏编码.这一场涉及的算法有二分查找.区间动态规划. 原题链接:点这儿. 第 ...

  9. 腾讯 2015秋招笔试题 编程题2:九宫格填数

    腾讯 2015秋招笔试题 编程2:九宫格填数 题目 2: 有下图的题解,请用 C/C++ 代码来列出满足下图 0-100 内的所有答案. 配合加减乘除,使得九宫格横竖都等于4. 智力冲浪 数字推理 请 ...

最新文章

  1. linux Fedora搭建hadoop平台总结
  2. C#三层架构第四课之DAL层
  3. apache win下安装
  4. Listary免费版下载与安装
  5. matlab,python 写kml文件(点,线,多边形)
  6. WM安装windows7超详细教程
  7. CentOS安装Nacos后,输入默认用户名和密码nacos/nacos,提示“用户名或密码错误”
  8. 强网杯2022·Crypto
  9. 拉姆达表达式启动一个线程
  10. 解决Vue3的undefined问题
  11. atr指标 java算法_关于股指期货的SAR、CCI、BIAS、ATR指标的算法
  12. Week 7 Homework
  13. 201571030135/201571030137《小学四则运算练习软件》结对项目报告
  14. 华为5G手机+鸿蒙系统,还能这么玩儿?
  15. 衣服面料成份(英文/日文/中文)
  16. Ceph集群搭建系列(六):RBD块设备的使用场景、原理分析及其创建
  17. 马云卸任CEO演讲:明天起生活将是我的工作
  18. 计算机组成原理实验系统,QY-JSJ03
  19. [激光原理与应用-46]:《焊接质量检测》-3-焊接缺陷产生及常用焊缝无损检测方法
  20. 【Android取证篇】Android设备USB调试打开方式(开发者模式)

热门文章

  1. 芋道 Spring Boot 消除冗余代码 Lombok 入门
  2. [人人]在大学的第二个总结
  3. ppt讲解计算机的组成,计算机基础(基本组成篇)讲解.ppt
  4. 基于Verilog HDL与虚拟实验平台的【计算机组成】与CPU实验第四章:七段译码器
  5. preempt rt对pagefault的处理
  6. Console and Shells的介绍,大家都看过吗
  7. 目标转化出价多少_京东快车搜索新增目标转化出价功能
  8. 标注工具——VGG Image Annotator (VIA)
  9. 魔力鸭linux驱动下载,魔力鸭原厂2108s固件
  10. 你小子,又在偷偷学this指向