主要体验了一把编程题,语言是C语言或者是C++,其他的貌似也有,感觉这两门语言太重要了,C++主要是面向研发或者测试类软件岗位,C语言的话则和嵌入式系统紧密联系,附带的Linux当然也是必须要会的!
功能的话代码上面有比较详细的说明,额,我觉得还是要打好底子,临时发挥做这样的题貌似还是需要有一定代码量的编程基础的
int return_M_m(string str) { int M, m; char M_str, m_str; M = m = 0; M_str = m_str = str[0]; for (int cot = 0; str[cot]; cot++) { if (M_str < str[cot]) { M_str = str[cot]; M = cot; } if (m_str > str[cot]) { m_str = str[cot]; m = cot; } } return (M - m) > 0 ? (M - m) : (m - M); }
还好是C++,如果单纯的是C语言,嗯,那就有点麻烦了,因为字符串处理的一些操作,C语言远没有C++方便,毕竟多了两个加号,如果还要更厉害的,还有C++++,也叫C#,Qt里面之前说过的,用的比较多!
代码在此,额,要注意的是,我写的代码是按照我的调试思路写的,实际上在上机作答时,应当严格按照试题给出的输入输出构造设计程序,嗯,类似于计算机二级考试那种!
for (int cpt = 0; cpt < n; cpt++) { /* 尝试一波扫描的思想 */ if (record_order[cpt] == 1) { cout << str[cpt] << ":" << return_M_m(str[cpt]) << "::" << cpt << endl; } }
哈,这个应该是我的输出打印脑洞吧!😂10个循环,扫描检测打印,好处就是不需要复杂的算法设计,缺点的话就是,循环用得太多,你懂的,处理效率很难上去,记得之前参加ACM的时候,玛德!对程序的运行时间都有要求!玛德智障!额,开个玩笑,ACM还是很有水平的比赛,上次因为公事耽误了,等研究生有时间,一定要去再次体验一波!
详细的代码可以浏览我的Github端进行浏览,欢迎一起交流!
https://github.com/misakasang/CHUIXUEGE
Gitbash还是很好的,哦对了,Github妙啊!看我的QQ界面就知道了,我应该是一个Git粉吧,毕竟也算个程序员!