震惊!c语言学了一辈子都不知道的小技巧。第十章

标题党,我这算不上小技巧就是一点感想。前一章说了用string类型会比字符数组简单一点。之前的都是一些基础一点的用法,下面的题目大多要求我们综合运用结合函数和循环的一些题目,如果之前熟练掌握这两个的话,其实还是比较简单的,,只需要一点思路的优化。下面这题就是我个人认为比较有代表性的:火车二连坐。题目如下:

程序员A和B要去一起坐火车,这列火车上的每一排都有4个座位,而且这四个座位

被过道分成了两半。当A和B到了车上时,一些位子已经有人了。

A和B是好基友,于是他们想要找一对连在一起的座位。两个连在一起的座位是同一排但是不被过道隔开的两个座位。给定一列火车上的座位情况,请你寻找一下能否找到一对连座?

这里难度在于处理多组数据,我们可以用二维数组解决。

#include<iostream>

using namespace std;

char a[1001][5];

int nb(int n){

for(int i=0;i<n;i++){

for(int j=0;j<5;j++){

if(a[i][0]==a[i][1]&&a[i][0]=='O'){

a[i][0]='+';

a[i][1]='+';

return 1;

}

else if(a[i][3]==a[i][4]&&a[i][3]=='O'){

a[i][3]='+';

a[i][4]='+';

return 1;

}

}

}

return 0;

}

int main(){

int n;

while(cin>>n){

for(int i=0;i<n;i++){

for(int j=0;j<5;j++){

cin>>a[i][j];

}

}

if(nb(n)==0){cout<<"NO"<<endl;}

else{

cout<<"YES"<<endl;

for(int i=0;i<n;i++){

for(int j=0;j<5;j++){

cout<<a[i][j];

}

cout<<endl;

}

}

}

return 0;

}

用数组中01和34巧妙规避了中间过道连坐的问题。

全部评论

相关推荐

一面:Java的库有哪些JUC的使用死锁如果一把锁&nbsp;两个线程执行会死锁吗synchronizedCountDownLatchCompletableFutureJVM对哪些比较了解?设计模式:画一个你经常使用的问项目的问题手撕算法反问:业务+今日表现二面:怎么去做日志的打印?AOP怎么使用?布隆过滤器为什么就比分布式锁的性能好?怎么样保障数据的一致性?如果布隆过滤器失效的话?Java的库有哪些?五个任务的编排并等待五个任务都运行后,进行最终的结果处理?五个任务的串行执行怎么去设计?可以怎么使用线程池去做?synchronized A-> synchronized B synchronized B->synchronized&nbsp;&nbsp;A会发生什么现象?死锁&nbsp;?synchronized A-> synchronized B-> synchronized C synchronized C -> synchronized B->&nbsp;synchronized&nbsp;&nbsp;A会发生什么现象?死锁?如果一把锁&nbsp;两个线程执行会死锁吗?SynchronizedCountDownLatchCompletableFuturesleep()和wait()的区别JVM的内存分配是怎么样的?有哪些是在栈生成?哪些是在堆生成?int类型的字节数在32位机和64位机下有什么区别?各占多少字节数?long类型呢?手撕算法:最小公倍数三面:怎么理解MVC?具体在你的项目里是指哪些模块?你的项目是怎么设计的?怎么写的?有哪些流程?怎么理解JVM?大概讲讲对哪块比较熟?怎么理解Java这门语言?如何理解团队合作?觉得自己基础怎么样?有什么问题想问的?HR面:自我介绍评价一下自己是否接受异地实习说一下自己的一些缺点为什么学习Java?怎么理解Java的?平时怎么学习的?有什么问题想问的吗?面向对象:2025届毕业生,可使用此内推码:NTAAivz1.&nbsp;官网投递进入校招官网,输入内推码进行:NTAAivz投递即可(1)云智校招官网:https://app-tc.mokahr.com/m/recommendation-apply/csig/6007?sharePageId=55725&amp;recommendCode=NTAAivz&amp;codeType=1&amp;hash=%23%2Frecommendation%2Fpage%2F55725(2)云智内推码:&nbsp;NTAAivz2.&nbsp;工作地点西安、武汉、长沙、重庆、厦门、大连3.&nbsp;Q&amp;AQ:我可以投递几个岗位?A:每位同学可投递两个岗位(如后台开发-2025届校园招聘&nbsp;&amp;&nbsp;客户端开发-2025届校园招聘),请同学们查看岗位描述,选择最适合的岗位进行投递。如同学在简历筛选后希望修改投递岗位,请通过邮箱或者云智校招QQ与我们联系。Q:之前投递过暑期实习岗位,秋招还能投递吗?A:可以,不影响秋招简历投递哦,快选择心仪的职位投递吧!Q:面试方式是什么?A:本次校园招聘以线上远程面试为主,在线上远程视频面试时,建议同学处于熟悉且安静的环境中,并提前检查摄像头、麦克风和耳机是否运行正常、网速达标且稳定等、安装最米哈游新版的腾讯会议或Chrome/QQ浏览器。面试安排若有任何变动,我们将第一时间通过短信或邮件告知。Q:我想调整面试时间或面试形式,应该联系谁?A:请尽量按时参与面试,如果临时有事或因不可抗力无法参加,可以通过邮箱或者云智校招QQ与我们联系,说明你的姓名、联系方式、调整原因以及可以调整的几个时间段。Q:如何查看我的面试进展?A:如需查询招聘进展,可点击【腾讯云智研发】微信公众号,在后台回复“校招进度”即可获得查询链接;也可以登录云智校招官网,进入“投递记录“查看招聘进展及面试情况。Q:云智与腾讯集团的关系是什么?A:云智全称腾讯云与智慧产业研发公司,简称“云智研发公司”。作为腾讯集团的子公司,云智由腾讯云与智慧产业事业群(CSIG)全面管理,与CSIG总部联合形成分布式研发的组织模式,推进云与产业互联网战略落地。Q:我们是腾讯员工吗?薪酬福利如何?A:云智研发公司是腾讯旗下的子公司,我们是腾讯子公司正式员工。云智研发公司独立运行,致力于为每一个加入团队的伙伴提供有保障和竞争力的薪酬福利、成长发展平台。投递的uu评论一下姓名缩写加岗位(HFG+产品经理),我会尽力跟进~经理),我会尽力跟进~
腾讯云智研发
|
校招
|
超多精选岗位
点赞 评论 收藏
分享
不愿透露姓名的神秘牛友
12-12 22:39
已编辑
酒企 软件岗 年薪13w左右 硕士
神奇的小山竹也不容易:泸州老窖base泸州,早9晚5; 马消996,季度考核年度考核综合淘汰; 华为base上海或者成都,大概就是14级中等水平。 希望各位大佬给点建议
点赞 评论 收藏
分享
评论
点赞
收藏
分享
牛客网
牛客企业服务