链接:https://www.nowcoder.com/acm/contest/90/A
来源:牛客网
A
小明在坐景驰科技研发的无人车到达了目的地。
景驰科技(JingChi.ai)是一家由人工智能技术驱动、以无人驾驶技术为核心的智能出行公司。它将打造面向中国市场的全无人驾驶。
从无人车下来以后,小明看到了一个长长的楼梯。
有一个n级台阶的楼梯,小明一次可以向上跳1步,两步,甚至是n步,请问小明跳到n级台阶有多少种跳法?
输入描述:
第一行输入一个整数t,代表有t组样例:( T<=30)
接下来的t行,都用一个整数n,表示楼梯有n级台阶( 1<=n<=30)
输出描述:
输出跳到第n级台阶有多少种跳法
示例1
输入

1
1
输出

1

discuss:
之前做过每次走1步或者2步 ,这个就是加强版,状态转移终点一步走到终点时

#include<bits/stdc++.h>
using namespace std;int main()
{long long n,i,j;long long f[33]={0,1,2};for(i=3;i<=30;i++){f[i]=1;for(j=1;j<i;j++)f[i]+=f[j];}int t;while(cin>>t){while(t--){cin>>n;cout<<f[n]<<endl;}}
}

D psd面试 > 23554099
链接:https://www.nowcoder.com/acm/contest/90/D
来源:牛客网

题目描述
掌握未来命运的女神 psd 师兄在拿了朝田诗乃的 buff 后决定去实习。
埃森哲公司注册成立于爱尔兰,是一家全球领先的专业服务公司,为客户提供战略、咨询、数字、技术和运营服务及解决方案。他们立足商业与技术的前沿,业务涵盖40多个行业,以及企业日常运营部门的各个职能。凭借独特的业内经验与专业技能,以及翘楚全球的交付网络,他们帮助客户提升绩效,并为利益相关方持续创造价值。埃森哲是《财富》全球500强企业之一,目前拥有约41.1万名员工,服务于120多个国家的客户。于是psd打算去埃森哲公司投一下简历。
于是他用英文写了一篇简历,由于手速太快了以致自己都不知道写了什么。
然而面试官 xwc 一眼就看到了重点:大学打过 ACM!
xwc:“
听说你很低袄?考你个题:
忽略字母大小写,你这篇简历去掉最长的回文子序列后还有多长?

psd 顺手就把这个问题抛给了你。
输入描述:
多组输入,每组输入一个长度不超过 1234 的没空格的字符串,是 psd 的简历。
输出描述:
每组输出一个整数,如题。
示例1
输入

google
输出

2
示例2
输入

aBc,bAd
输出

2
discuss:
注意子串连续,子序列不连续

#include <iostream>
#include <cstring>
using namespace std;#define MAX 1300int f[MAX][MAX]={0};void LPS_Length(char *s,int len)
{for (int i=len-1;i>=0;i--){f[i][i]=1;for (int j=i+1;j<len;j++){if (s[i]==s[j])f[i][j]=f[i+1][j-1]+2;elsef[i][j]=max(f[i][j-1],f[i+1][j]);}}}
char str[MAX];
int main()
{while(scanf("%s",str)!=EOF){memset(f,0,sizeof(f));int len = strlen(str);for (int i = 0; i < len; i++)if (str[i] <= 'z' && str[i] >= 'a')str[i] ^= ' ';LPS_Length(str, len);cout << len - f[0][len - 1] << endl;}return 0;
}

E 回旋星空
链接:https://www.nowcoder.com/acm/contest/90/E
来源:牛客网

题目描述
曾经有两个来自吉尔尼斯的人(A和C)恋爱了,他们晚上经常在一起看头上的那片名为假的回旋星空,
有一天他们分手了,A想通过回旋星空测量他们之间的复合指数,测量的规则是,
计算回旋图标的个数,即选中三颗星星,分别作为回旋图标的起点,拐点和终点,假设现在有三个
星星分别为i,j,k,如果d(a[i],a[j]) == d(a[j],a[k])则表示找到了一个回旋图标,其中d(x,y)表示这两个点的欧氏距离
为了给它很大的希望(i,j,k)和(k,j,i)被认为是两个不同的回旋图标

A花了一晚上终于把整片星空映射到了一张二平面图上,由于星星太多以至于A有点懵逼,所以
你能帮帮他吗,要不然他可能真的WA的一声哭了出来
作为埃森哲公司的一员,你在解决问题的同时也向A介绍了埃森哲公司的业务范围。
为了全方位地满足客户的需求,正在不断拓展自身的业务服务网络,包括管理及信息技术咨询、企业经营外包、企业联盟和风险投资。除了以产品制造业、通信和高科技、金融服务、资源、政府机构等不同行业划分服务内容之外,还从以下几方面提供咨询服务:
1.客户关系管理
2.业务解决方案
3.电子商务
4.供应链管理

输入描述:
第一行一个整数T(T<=10),表示组数
对于每组数据有一个n,表示有n个小星星(0< n < 1000)
接下来跟着n行,每行跟两个整数xi和yi表示每个星星的坐标(-10000< xi, yi<10000)
输出描述:
对于每组数据,如果没有找到回旋图标输出”WA”,否则输出找到图标个数
示例1
输入

2
2
1 0
0 1
3
1 0
0 1
0 0
输出

WA
2
备注:
没有重复的星星,且选中的三个星星是互相不一样的(即下标不同)
欧氏距离即直线距离

discuss:
暴力map求解

#include<bits/stdc++.h>
using namespace std;
struct node
{int x,y;
} num[1111];
#define ll long long
int main()
{int t,i,j,n;while(cin>>t){while(t--){cin>>n;for(i=0; i<n; i++){cin>>num[i].x>>num[i].y;}map<long long, int> mp[1111];for(i=0; i<n; i++){for(j=0; j<n; j++){if(i!=j){mp[i][(num[i].x - num[j].x)*(num[i].x - num[j].x) + (num[i].y - num[j].y)*(num[i].y - num[j].y)]++;}}}map<long long, int>::iterator it;int ans=0;for(i=0; i<n; i++){for (it = mp[i].begin(); it != mp[i].end(); it++){int cnt = it->second;ans+=  cnt*(cnt - 1);}}if(!ans)puts("WA");else  cout<<ans<<endl;}}
}

G 旋转矩阵
链接:https://www.nowcoder.com/acm/contest/90/G
来源:牛客网

题目描述
景驰公司自成立伊始,公司便将“推动智能交通的发展,让人类的出行更安全,更高效,更经济,更舒适”作为公司使命,通过产业融合、建设智能汽车出行行业的方式,打造“利国、利民、利公司、利个人”的无人驾驶出行系统。公司的愿景是成为中国第一、世界一流的智能出行公司。
有一天,景驰公司的工程师在真车上做测试。
景驰公司的试验车上面有一个奇怪的图案,这是一个n*m的矩阵,这辆车可以到处开,每次可以左旋右旋,小明想知道转完之后的图案是怎么样的
具体来说:有一个n*m的字符矩阵,只包含3种字符(‘+’‘-’,‘|’),通过一通乱旋之后变成什么样子?
输入描述:
第一行测试样例数T(0

#include<bits/stdc++.h>
using namespace std;
int main()
{int t,i,j,n,m;char mp[35][35];while(cin>>t){while(t--){scanf("%d%d",&n,&m);getchar();for(i=0;i<n;i++)scanf("%s",mp[i]);char s[1111];scanf("%s",s);int len=strlen(s);int cnt=0;for(i=0;i<len;i++){if(s[i]=='L') cnt++;else cnt+=3;cnt%=4;}// cout<<cnt<<"****"<<endl;//   puts(s);if(cnt==0){cout<<n<<" "<<m<<endl;for(i=0;i<n;i++)puts(mp[i]);puts("");}else if(cnt==1){cout<<m<<" "<<n<<endl;//     +-+//   |+|for(i=m-1;i>=0;i--){for(j=0;j<n;j++){if(mp[j][i]=='-')printf("|");else if(mp[j][i]=='|')printf("-");else printf("%c",mp[j][i]);}puts("");}puts("");}else if(cnt==2){cout<<n<<" "<<m<<endl;for(i=n-1;i>=0;i--){for(j=m-1;j>=0;j--){printf("%c",mp[i][j]);}puts("");}puts("");}else{cout<<m<<" "<<n<<endl;//     +-+//   |+|for(i=0;i<m;i++){for(j=n-1;j>=0;j--){if(mp[j][i]=='|')printf("-");else if(mp[j][i]=='-')printf("|");else printf("%c",mp[j][i]);}puts("");}puts("");}}}
}

J
链接:https://www.nowcoder.com/acm/contest/90/J
来源:牛客网

题目描述
牛客网是IT求职神器,提供海量C++、JAVA、前端等职业笔试题库,在线进行百度阿里腾讯网易等互联网名企笔试面试模拟考试练习,和牛人一起讨论经典试题,全面提升你的编程。作为acmer的小A,牛客网是他首选的题库。
小A是一个中度强迫症患者,每次做数组有关的题目都异常难受,他十分希望数组的每一个元素都一样大,这样子看起来才是最棒的,所以他决定通过一些操作把这个变成一个看起来不难受的数组,但他又想不要和之前的那个数组偏差那么大,所以他每次操作只给这个数组的其中n-1个元素加1,但是小A并不能很好的算出最优的解决方案,如果你能帮他解决这个问题,小A就能送你一个气球
输入描述:
第一行一个整数T(T<=100),表示组数
对于每组数据有一个n,表示序列的长度(0< n <100000)
下面一行有n个数,表示每个序列的值(0

#include<bits/stdc++.h>
using namespace std;
#define ll long long
const ll N=1e5+10;ll a[N];
int main()
{ll n,i,j,t;while(cin>>t){while(t--){cin>>n;ll s=0;for(i=0;i<n;i++)scanf("%lld",a+i),s+=a[i];sort(a,a+n);s-=a[0]*n;cout<<s<<" "<<a[0]+s<<endl;}}
}

链接:https://www.nowcoder.com/acm/contest/90/K
来源:牛客网

题目描述
ZiZi登录各种账号的时候,总是会忘记密码,所以他把密码都记录在一个记事本上。其中第一个密码就是牛客网的密码。
牛客网专注于程序员的学习、成长及职位发展,连接C端程序员及B端招聘方,通过IT笔试面试题库、在线社区、在线课程等提高候选人的求职效率,通过在线笔试、面试及其他工具提升企业的招聘效率。
团队由来自Google、百度、阿里、网易等知名互联网巨头的热血技术青年组成,用户覆盖全国2000多所高校的100W求职程序员及全部一线互联网企业,并仍在高速增长中。
谨慎的ZiZi当然不会直接把密码记录在上面,而是把上面的字符串经过转化后才是真正的密码。转化的规则是把字符串以n行锯齿形写出来,然后再按从左到右,从上到下读取,
即为真正的密码。如ABABCADCE以3行写出:

所以真正的密码是ACEBBACAD。但是每一次都要写出来就太麻烦了,您如果能帮他写出一个转换程序,他就送你一个气球。
输入描述:
第一行一个整数T,表示数据组数
对于每组数据,首先一个正整数n(n<=100,000),然后下一行为一个字符串,字符串长度len<=100,000。
输出描述:
对于每组数据,输出一个字符串,代表真正的密码。
示例1
输入

1
3
ABABCADCE
输出

ACEBBACAD

暴力模拟

#include<bits/stdc++.h>
using namespace std;
queue<char> mp[111111];
char str[111111];
int main()
{int t,i,j,n;cin>>t;{while(t--){cin>>n;for(i=0;i<=n;i++){while(!mp[i].empty()){mp[i].pop();}}cin>>str;if(n==1){puts(str);continue;}int len=strlen(str);int cnt=1;int f=1;for(i=0;i<len;i++){mp[cnt].push(str[i]);if(f){cnt++;if(cnt==n+1){cnt=n-1;f=0;}}else{cnt--;if(cnt==0){cnt=2;f=1;}}}for(i=1;i<=n;i++){while(!mp[i].empty()){printf("%c",mp[i].front());mp[i].pop();}}puts("");}}
}

链接:https://www.nowcoder.com/acm/contest/90/L
来源:牛客网

题目描述
在一个风雨交加的夜晚,来自异世界的不愿透露姓名的TMK同学获得了两种超强药水A、B。根据说明书,TMK知道了这两种药水的作用:
(1)药水A能使人的生命值提高,每饮用1个单位能使他生命值变成原来的x倍,即每饮用p个单位能使他的生命值变成原来的x^p(x的p次方)倍。
(2)药水B能使人的能量值提高,每饮用1个单位能使他能量值变成原来的y倍,即每饮用q个单位能使他的能量值变成原来的y^q(y的q次方)倍。
于是TMK迫不及待地喝下了所有的a个单位的药水A和b个单位的药水B,他立马体会到了自己能力的超强变化,然后他看了接下来的说明书:
药水A和药水B能互相抑制对方的负面效果,一旦生命值提升的倍数和能量值提升的倍数不相等,那么在五个小时后将会发生非常严重的后果。
于是TMK同学慌了,他想知道自己提升的生命值和能量值的倍数是否相等,由于他非常慌张,所以他把计算的重任交给你了。
作为埃森哲公司的一员,你觉得这个问题很简单,这得益于埃森哲公司分享知识的文化。
分享知识已成为埃森哲源远流长的文化。
埃森哲公司在帮助客户进行行之有效的知识管理的同时,它的管理层在其内部也进行了成功的知识管理的实践。如今,在埃森哲,分享知识已成为其源远流长的文化。在很大程度上,埃森哲公司的成功得益于其强大的知识管理系统。

输入描述:
第一行一个整数T,代表有T组数据。(1<=T<=5000)
每组数据仅一行,包含四个整数x,a,y,b,意义为题目描述。(1<=x,a,y,b<=10^9)
输出描述:
每组数据输出一行”Yes”或”No”(不包含双引号),表示TMK提升的生命值和能量值的倍数是否相等,相等为”Yes”,不相等为”No”。
示例1
输入

4
2 20 4 10
20 20 20 20
20 21 21 20
32768 32768 1048576 24576
输出

Yes
Yes
No
Yes

Discuss:
快速幂

#include<bits/stdc++.h>
using namespace std;
#define ll long long
const ll mod=1e9+7;
ll solve(ll a,ll b)
{ll ans=1;while(b){if(b&1)ans=(ans*a)%mod;b>>=1;a=(a*a)%mod;}return ans;
}
int main()
{ll a,b,i,j,x,y,t;while(cin>>t){while(t--){cin>>x>>a>>y>>b;ll s1=solve(x,a);ll s2=solve(y,b);if(s1==s2)puts("Yes");else puts("No");}}}

2018——广东工业大学校赛题解相关推荐

  1. 2018 华中科技大学校赛 L Fresh Air BFS

    链接: https://www.nowcoder.com/acm/contest/106/L 来源:牛客网 Fresh Air 时间限制:C/C++ 1秒,其他语言2秒 空间限制:C/C++ 3276 ...

  2. 2018 华中科技大学校赛 L Fresh Air 思维BFS

    链接:https://www.nowcoder.com/acm/contest/106/L 来源:牛客网 It's universally acknowledged that there're inn ...

  3. 2018 团队设计天梯赛题解---华山论剑组

    写在前面 2018 年度的团队设计天梯赛前几天结束了.但是成绩真的是惨不忍睹...毕竟是团队的比赛,如果团队平均水平不高的话,单凭一个人,分再高也很难拉起来(当然,一个人能单挑一个队的大神除外). 说 ...

  4. 校内训练赛题解第三篇

    校内训练赛题解 人气估值 解题思路 脑力训练计划 (模拟 + 字符串) 解题思路 大暑赛期(贪心 + 思维) 人气估值 题目描述 你是某动画制作公司的企划部长.如今动画制作公司制作的东西,已经不仅仅局 ...

  5. 2018年天梯赛-全国总决赛

    L1-1 天梯赛座位分配 (20 分)(待补) 题意: 天梯赛每年有大量参赛队员,要保证同一所学校的所有队员都不能相邻,分配座位就成为一件比较麻烦的事情.为此我们制定如下策略:假设某赛场有 N 所学校 ...

  6. 福建农林大学校赛(同步赛)

    福建农林大学校赛(同步赛) 目录 A 派蒙之灵 题目思路 题目代码 B 派蒙家的荧女仆 题目思路 题目代码 C 派蒙的奇妙冒险------石之海 题目思路 题目代码 D 派蒙游戏世界对旅行荧妹很不友好 ...

  7. 2018宁夏网络赛 B Goldbach (米勒拉宾素数测试)

    2018宁夏网络赛 B Goldbach (米勒拉宾素数测试) 题目链接 题目大意: 给你一个偶数n (2<n<=1e18) 让你把n分解成两个素数的和.(如果有多个输出任意一个) 解题思 ...

  8. “科林明伦杯”哈尔滨理工大学第十届程序设计竞赛(同步赛) 题解

    "科林明伦杯"哈尔滨理工大学第十届程序设计竞赛(同步赛) 题解 萌新又来写题解啦 原题链接 B 减成一 题意:存在n个数,每次操作可以任选一个区间使得区间内的所有数字减一.问最少多 ...

  9. 第一届『Citric杯』NOIP提高组模拟赛 题解

    [官方题解]第一届『Citric杯』NOIP提高组模拟赛 题解 第一题 柠檬超市 这题是本次模拟赛的送分题.做法显然. 但是注意此题有一个陷阱: 注意W和C的规模都是10^9,所以如果直接用doubl ...

最新文章

  1. python如何创建不同元素的矩阵_Python numpy学习(2)——矩阵的用法
  2. 递归用法之“海盗分赃难题”
  3. 集合框架之Map LinkedHashMap
  4. 工程师的NIOS II学习笔记(转)
  5. C++STL与泛型编程(2) 第一个C++ STL Application
  6. 程序员高效学习,坚持十年就是大师
  7. 【狂神MyBatis笔记】map作为参数传递类型进行增删改查模糊查询
  8. data1 op data2 c语言,编写一个简单计算器程序,输入格式为:data1 op data2。其中data1和data2是参加...
  9. 国内外手机号码正则表达式
  10. JDK包括的Java基础类库_问:JDK是Java平台的核心,Java运行环境、Java工具、Java基础类库(rt.jar)。J...
  11. indiegogo众筹
  12. 如何科学地蹭热点:用python爬虫获取热门微博评论并进行情感分析
  13. Windows系统提示“telnet不是内部或外部命令,也不是可运行的程序或批处理文件”怎么办?
  14. mac安装MongoDB与启动
  15. 10000多个QQ空间透明flash素材大观园
  16. Gstreamer学习流水账
  17. android 混合模式,Android灵魂画家的18种混合模式
  18. 解决问题黄金三步:定义问题—分解问题—归类分组
  19. 学人工智能用什么笔记本电脑好?学AI用啥电脑?
  20. TeX.Knuth有关的故事

热门文章

  1. 软考高级 真题 2010年上半年 信息系统项目管理师 综合知识
  2. 学了C语言,能开发什么项目?
  3. Python Django框架下做电商项目
  4. 【APICloud系列|34】上架华为应用市场缺少免责函?
  5. 学生个人单页面网页作业 学生网页设计成品 静态HTML网页单页制作 dreamweaver网页设计与制作代码 web前端期末大作业
  6. python的contour怎么画虚线_Python+Matplotlib画contour图
  7. 网警如何查虚拟服务器,网警查高防云服务器
  8. 世界上最简单的会计书(现金流量表)
  9. java中图片排版_Java实现第八届蓝桥杯图形排版
  10. python中复数的实部和虚部都是浮点数_Python基础:数值(布尔型、整型、长整型、浮点型、复数)...