经过几天的雾霾,魔都终于放晴了。哥投了几天的简历,希望找到一份.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. Hibernate(三)之配置文件详解

    一.核心配置文件(hibernate.cfg.xml) <?xml version="1.0" encoding="UTF-8"?> <!DO ...

  2. input是否checked与使用jquery的attr或prop方法无关

    最近在项目中有这样一个需求,用户在下单时可以选择优惠券,也可取消选择,并且可以多次选择,取消. 这是一个典型的input标签checked功能,博主使用radio元素实现此需求,但是优惠券只能选中,不 ...

  3. SQL Server特殊用法笔记

    1. MERGE用法:关联两表,有则改,无则加 SQL语句: create table #AAA(id int,A int,AA int,AAA int,B int) create table #BB ...

  4. MYSQL数据库导入大数据量sql文件失败的解决方案

    1.在讨论这个问题之前首先介绍一下什么是"大数据量sql文件". 导出sql文件.选择数据库-----右击选择"转储SQL文件"-----选择"结构和 ...

  5. C++命名空间的解释 【转】

    使用命名空间的目的是对标识符的名称进行本地化,以避免命名冲突.在C++中,变量.函数和类都是大量存在的.如果没有命名空间,这些变量.函数.类的名称将都存在于全局命名空间中,会导致很多冲突.比如,如果我 ...

  6. Java NIO之Buffers

    一.前言 在笔者打算学习Netty框架时,发现很有必要先学习NIO,因此便有了本博文,首先介绍的是NIO中的缓冲. 二.缓冲 2.1 层次结构图 除了布尔类型外,其他基本类型都有相对应的缓冲区类,其继 ...

  7. html 初始化

    //  html 初始化 <!DOCTYPE html><html lang="en"><head> <meta charset=&quo ...

  8. Extjs6(三)——用extjs6.0写一个简单页面

    本文基于ext-6.0.0 一.关于border布局 在用ext做项目的过程中,最常用到的一种布局就是border布局,现在要写的这个简单页面也是运用border布局来做.border布局将页面分为五 ...

  9. CF Educational Codeforces Round 3 E. Minimum spanning tree for each edge 最小生成树变种

    题目链接:http://codeforces.com/problemset/problem/609/E 大致就是有一棵树,对于每一条边,询问包含这条边,最小的一个生成树的权值. 做法就是先求一次最小生 ...

  10. 五十行javascript代码实现简单的双向数据绑定

    五十行javascript代码实现简单的双向数据绑定 Vue框架想必从事前端开发的同学都使用过,它的双向数据绑定机制能给我们带来很大的方便.今天闲着没事,尝试着实现一下双向数据绑定,接下来给大家分享一 ...