一觉醒来,全世界编程水平下降一万倍,而我会手写main函数

    公司 HR 打电话约面试时,特意强调:“我们招的是 Java 开发,最低本科,你大专学历…… 要不还是算了?” 我正想挂电话,她又补了句:“不过老板说‘万一呢’,你过来试试吧。”
面试室里,技术主管翻简历的手停在 “学历:大专” 那行,指节捏得发白。他把简历往桌上一墩,笔都弹起来了:“会写代码吗?别告诉我你就看过两天教程。”
“会一点 Java。” 我指尖无意识敲着桌面,“比如 public static void main,能写个入口方法。”
主管手里的笔 “啪” 掉在地上。他弯腰捡笔时腰杆都在抖,抬头盯着我半天,突然扯开嗓子喊:“老板!快!快叫技术部所有人过来!有个会写 main 方法的!能启动程序的那种!”
隔壁办公区的键盘声跟被掐断似的。老板踩着拖鞋冲进来,眼镜滑到鼻尖上,扒着门框喊:“真的假的?能写 main 方法?我们服务器上那堆代码,三个月没人能跑起来!”
“不止,” 我补充道,“还会用 System.out.println ("xxx"),带换行的那种。”
老板 “嗷” 一嗓子蹦起来,差点撞翻饮水机:“留!现在就签合同!月薪 25k!住房补贴单独算!电脑给你配最新款 Mac!”
    旁边刚端着茶杯进来的技术组长手一抖,茶水洒在衬衫上都没察觉:“能…… 能换行?我们之前打印日志都是手动敲 \n,敲错一次就得改半天!”
    我没说的是,我还会定义 int a=10; int b=20; 然后算 a+b—— 这底牌,得等转正再亮。
刚坐到工位,运营部的大姐捧着笔记本凑过来,声音跟蚊子似的:“大佬,您说的 main 方法…… 是不是就是程序开头那行‘public static void……’?我之前总把 static 写成 staitc,改到崩溃。”
    我点头的瞬间,余光瞥见好几个脑袋凑过来,有人掏出荧光笔在本子上划:“main 方法 = public static void main (String [] args),记死!”
    下午突然炸锅 —— 甲方发了个紧急需求:“今晚必须跑通一个计算 1 到 100 总和的程序,我们自己写的跑一次崩一次。” 整个技术部的人围着电脑挠头,屏幕上的代码东倒西歪,有个哥们居然在用 for 循环写 i=i+1,还忘了初始化 i。
“我试试?” 我拉过椅子。
办公室突然静得能听见硬盘转。我打开 Eclipse,先敲 public class SumTest,回车时 IDE 自动补全了大括号,再写 main 方法,然后定义 int sum=0; 接着 for (int i=1;i<=100;i++){sum+=i;},最后 System.out.println ("总和:"+sum); 点击运行 —— 控制台跳出 “总和:5050”,连字体都透着工整。
    那个写 i=i+1 的哥们 “嘶” 地倒吸凉气,手机搜 “Java for 循环 sum+=i 是什么神仙操作”。
产品经理抱着胳膊冷笑:“不就几行代码?我上我也行。”
    我没说话,随手按了 Ctrl+D,刚才写的 for 循环自动复制了一行,改了个变量名就成了计算偶数和的逻辑。产品经理的脸噌地红透了,转身假装接电话,其实在偷偷搜 “Eclipse Ctrl+D 快捷键”。
下班前,一直用 Excel 算数据总和的财务大姐攥着计算器过来,声音带着颤:“小老师,您这写个程序算总和的本事,在阿里腾讯不得拿 50k?”
    我笑了笑,没告诉她 —— 我其实还会用 if (i%2==0) 筛选偶数,甚至能写个带 return 的方法。这底牌,留着给明年涨薪用正好。
全部评论
又疯一个
点赞 回复 分享
发布于 10-10 09:29 广东

相关推荐

09-28 21:34
已编辑
浙江大学 算法工程师
1.&nbsp;签到题,知道ASCII码怎么计算就行2.&nbsp;给一个initial数组,代表层序遍历一棵树的节点的权值(0代表空节点),节点权值只有1,2,3,4,5五种可能,然后给你一个target数组,要求通过操作把树的节点权值变成这个数组,操作是:选中一个节点,则该节点及其子树的所有节点的权值+1(如果超过5,变回1)。&nbsp;问从initial变成target的最小操作次数可以边遍历边维护一个cum_diff[i],&nbsp;代表i和i的所有父节点的已操作次数,&nbsp;对于节点idx,&nbsp;(idx-1)&gt;&gt;1获得其父节点下标,进而获得所有父节点操作次数,当前节点还需操作:&nbsp;(&nbsp;(初始需操作次数&nbsp;-&nbsp;所有父节点操作次数)%&nbsp;5)&nbsp;%5&nbsp;&nbsp;次p.s.&nbsp;这题90%很可能是没考虑空树3.&nbsp;有n(1&lt;=n&lt;=100)个魔法课程,每个魔法课需要mana[i]点法力学习,学习后能增强power[i]点法强,你只有M(1&lt;=M&lt;=1000)点法力值来学习,同时呢,你可以选择不同的楼层学习课程,共有m(1&lt;=m&lt;=5)个楼层,每个楼层有一个bonus[j](1&lt;=bonus&lt;=3),&nbsp;即在第j层学习时,增强的法强和消耗的法力都×bonus[j],&nbsp;&nbsp;你必须按顺序学习课程。&nbsp;问你可以获得的最大法强一开始直接回溯做的,想剪枝剪了好久,然后发现,回溯优化一下不就是记忆化搜索,记忆化搜索优化一下不就是动态规划?于是直接开始dp,&nbsp;dp[i][j][k]&nbsp;代表拥有法力k时,在第j层学习第i个课程后的法强最大值,更新的时候我是用的四重循环,要注意只有dp[i-1][floor][k]&gt;0&nbsp;且&nbsp;k&gt;=cost&nbsp;的时候,才进行max(dp[i][j][k],&nbsp;dp[i-1][floor][k]&nbsp;+&nbsp;bonus[j]*power[i])的更新第四题,由于第三题先写回溯,再优化回溯,再换成dp,再改dp的错,改了一个半小时,第四题根本没时间做了,只记得大鱼吃小鱼()
投递拼多多集团-PDD等公司10个岗位
点赞 评论 收藏
分享
评论
4
收藏
分享

创作者周榜

更多
牛客网
牛客网在线编程
牛客网题解
牛客企业服务