经过几天的雾霾,魔都终于放晴了。哥投了几天的简历,希望找到一份.NET开发方面的岗位。也收到了几个面试邀请。这不应Ge老师的要求,选了个良辰吉日,带着身份证,学位证怀揣着2B青年的梦想来这个XX公司面试。我答应Ge老师的电话邀请的一个重要原因是该公司位于北京广播电视大学学习中心。俺们是农村来的,但也听过北京广播电视大学的大名,做为二十六七仍单身的我,能有机会和广播电视大学的众美女工作在同一楼层,自然是求之不得,心情那个爽。

大概早上9点多,我进了9层906A室,一个漂亮的前台妹妹眼睛很亮,温柔的问:“您是来XX公司面色的吧?” 我说: "嗯". 又问简历带了吗?我说“没”,毕业证,学位证带了吗?我说学位证带了,毕业证如果你们要看,到时候再给你。她说好的。然后给了一张简历表,一张XX公司的笔试题目。共4道题目,对于年年拿奖学金的我来说,考考基础题当然是什么问题都没有。最后一题目是编程题,好久没写这些控制台程序了,看起来还是比较亲切。(题目是手写的,字很清秀,估计是XX公司觉得题量小,免得让人觉得忽悠忍,于是让一个可爱的妹妹后补上的。)

先把这题目分享给大家,大概是这样的:输入一个数n,然后将该数从1 ……n打印出来。格式如下:

然后我就分析呀,有点像等比公式,接着就按这个思路,求其行数,然后输出结果。看一下我分析的图:

有了思路,就来连连笔实现吧。

1. 用递归来求等比数列的通项公式

         // 1. 分析数字,利用递归获取输入数的等比公式,然后求其行数
public static int GetPowerValue(int n)
{
if (n < )
{
return ;
}
else if (n == )
{
return ;
}
else if (n == )
{
return ;
}
else
{
return * GetPowerValue(n - );
}
}

2. 获取输出的行数

         // 2. 获取行数
public static int GetColumn(int num)
{
int column;
for (column = ; column < num; column++)
{
if (num >= GetPowerValue(column) && num < GetPowerValue(column + ))
{
return (column+);
}
}
return -; // 没有找到合适的行数,退出
}

3. 打印结果

        // 3. 打印结果
public static void OutputTraingle(int num)
{
int column = GetColumn(num); if (column == -)
{
return; // 退出
} for (int i = ; i <= column; i++)
{ for (int j = GetPowerValue(i-); j < GetPowerValue(i) && j<= num; j++)
{
Console.Write(j + " ");
}
Console.WriteLine();
}
}

4. 主程序

         static void Main(string[] args)
{
Console.WriteLine("\n===== Output traingle =====\n"); Console.Write("Please enter the test number: ");
int num = Convert.ToInt32(Console.ReadLine()); OutputTraingle(num); Console.ReadKey();
}

5. 测试结果

答完这张4道题目前后用了40~50分钟吧,然后把题给了漂亮的妹妹。妹妹说,我找面试官给你面试,让我先等一下。

大概过了5~6分钟,一个戴着眼睛,皮肤黑黑的类似阿三的男的过来了,他很不客气的板着个脸坐下了,然后指点示意让我坐下。一边埋头看我简历一边让我自我介绍一下,接下来我就自我介绍了,当然我可以肯定的是他让我自我介绍的目的,无非是好在这段时间内看我的简历,确切的说看我的工作经验。(这里要说一下:我目前从事的微软外包的开发测试工程师,工作经验主要是用C#写测试代码,涉及的技能有C#,SQL Server,因为工作中也涉及到UI方面的验证,所以对前台的JS, JQuery,Ajax都用得比较频繁,自己也是杨中科老师Asp.net网络视频爱好者,自我评价:这种人才到那找!) 他问我有没有纯开发经验,我说什么较“纯”,你Y的意思从项目启动到项目结束都走一遍,就较“纯”吗?我现在的老领导,在外包公司从事开发工作五、六年也没有把整个项目都走一遍。他算不算“纯”开发人员?!然后我很诚实的回答,没有。

然后那个阿三又说你期望工资是多少?我说XXK,他说你的期望离我们的要求还是有点高。然后我又说我目前的工资是XK,工作半年多涨(XX-X)K要求不是过分呀。最后确认了好几遍,我急了就问你们能给多少,那个鸟人说连你目前的工资都给不到。我X,你Y的忽悠我啊。让我上班时间跑你这面试!

后来哥就写了这篇笔记,一来是分享一下自己找工作的经历,二来是提醒那些所谓的面试官别把自己太当回事,出了你的窝,你已一样。嘚瑟个毛,鸟人!

小议 - 来自《XX时代XX公司》的笔试编程题目的更多相关文章

  1. tomcat 启动参数 Xms, Xmx, XX:MaxNewSize, XX:PermSize, -XX:MaxPermSize, Djava.awt.headless

    在 tomcat/bin/catalina.sh 的 第一行#!/bin/sh 下添加 JAVA_OPTS="-server -Xms512m -Xmx1024m -XX:MaxNewSiz ...

  2. Nopcommerce商城添加【满XX减XX优惠券】功能

    公司的电商网站要做个优惠券的功能,nop框架,但我接触nop时间不多,最后还是为了功能而完成了.这中间肯定有很多小问题. Nopcommerce自带的促销功能感觉不是很好,首先优惠券功能放在购物车页面 ...

  3. xx市xx项目运维工作方案

    注:提供给各位正在做项目,或准备做项目的朋友,仅供参考,用于后期运维提供的方案模板.仅供参考. 因为直接从word复制,会有一些排版的问题.可以留邮箱. xx市xx项目运维工作方案 xx有限公司 20 ...

  4. -XX:PermSize -XX:MaxPermSize 永久区参数设置

    -XX:PermSize  -XX:MaxPermSize   –设置永久区的初始空间和最大空间 -XX:PermSize 设置持久代(perm gen)初始值,物理内存的1/64 -XX:MaxPe ...

  5. JAVA -Xms -Xmx -XX:PermSize -XX:MaxPermSize 区别

    java  -Xms -Xmx -XX:PermSize -XX:MaxPermSize     在做java开发时尤其是大型软件开发时经常会遇到内存溢出的问题,比如说OutOfMemoryError ...

  6. [Irving]WPF Invalid character in the given encoding. Line xx, position xx.' XML is not valid.

    WPF开发中发现Xaml界面中突然抽风似的提示错误 Invalid character in the given encoding. Line xx, position xx.' XML is not ...

  7. 猎豹上市(猎豹的广告收入中有70%来自BAT三家公司,总收入中有58%来自BAT)

    发表日期: 2014 年 5 月 9 日 From 网易专题 文/赵楠 村里那点儿事 猎豹移动上市之夜,我挺激动. 激动除了因为有好朋友在这家公司外,也因为猎豹移动在历史上的几次起承转合非常不易,在巨 ...

  8. java -Xms -Xmx -XX:PermSize -XX:MaxPermSize

    java  -Xms -Xmx -XX:PermSize -XX:MaxPermSize     在做java开发时尤其是大型软件开发时经常会遇到内存溢出的问题,比如说OutOfMemoryError ...

  9. Python第三天 序列 5种数据类型 数值 字符串 列表 元组 字典 各种数据类型的的xx重写xx表达式

    Python第三天 序列  5种数据类型  数值  字符串  列表  元组  字典 各种数据类型的的xx重写xx表达式 目录 Pycharm使用技巧(转载) Python第一天  安装  shell ...

随机推荐

  1. Java中利用BigInteger类进行大数开方

    在Java中有时会用到大数据,基本数据类型的存储范围已经不能满足要求了,如要对10的1000次方的这样一个数据规模的数进行开方运算,很明显不能直接用Math.sqrt()来进行计算,因为已经溢出了. ...

  2. Spark名词解释及关系

    随着对spark的业务更深入,对spark的了解也越多,然而目前还处于知道的越多,不知道的更多阶段,当然这也是成长最快的阶段.这篇文章用作总结最近收集及理解的spark相关概念及其关系. 名词 dri ...

  3. 跟着刚哥梳理java知识点——运算符(五)

    运算符:是一种特殊的符号,用以表示数据的运算.赋值和比较. 1.算数运算符(+.-.*./.%.++.--) a)除: int i = 12; double d1 = i / 5; //2.0 dou ...

  4. [编织消息框架][JAVA核心技术]动态代理应用10-水平扩展方案

    服务分为系统服务同用户服务两种 水平扩展是基于系统服务,而拆分方式又有几种方案,按数据跟业务情况来做决策 1.每个服务独立存储(图1):每个服务只负责一个或多个领域实体存储,A服务不能直接修改B服务的 ...

  5. Divide Groups(分组)

    题目链接 题目大意是说输入数字n 然后告诉你第i个人都认识谁? 让你把这些人分成两堆,使这每个堆里的人都互相认识. 做法:把不是互相认识的人建立一条边,则构建二分图,两堆的人肯定都互相认识,也就是说, ...

  6. file_get_contents HTTP request failed! Internal Server Error

    使用file_get_contents报错 Severity: WarningMessage: file_get_contents(http://geetest.com:8000/select?gid ...

  7. Java 比较(==, equals, compareTo, compare)

    在Java中,有 ==, equals(), compareTo(), compare() 等方法可以比较两个值或对象,比较容易混淆.画了个简单的思维导图总结一下 Java Compares 我经常记 ...

  8. 探索 vuex 2.0 以及使用 vuejs 2.0 + vuex 2.0 构建记事本应用

    前言 首先说明这并不是一个教程贴,而记事本应用是网上早有的案例,对于学习 vuex 非常有帮助.我的目的是探索 vuex 2.0 ,然后使用 vue 2.0 + vuex 2.0 重写这个应用,其中最 ...

  9. nginx下的几种包管理器

    一般来说著名的linux系统基本上分两大类:   1.RedHat系列:Redhat.Centos.Fedora等   2.Debian系列:Debian.Ubuntu等   RedHat系列: 1 ...

  10. DirectFB学习笔记三

    本篇目的,通过键盘的esc键控制程序退出.学习输入设备产生事件,接收事件,产生反应. 首先获取输入设备 IDirectFBInputDevice *keyboard = NULL; dfb->G ...