关闭

拉勾网ThoughtWorks面试题java代码

标签: 应聘题目java面试题
482人阅读 评论(0) 收藏 举报

今天看了一道题感觉很有意思就动手写了一下,对于一个新手来说,很有练习意义,我就把题目和代码发出来大家参考一下,希望能提提意见

你是一名体育老师,在某次课距离下课还有五分钟时,你决定搞一个游戏。此时有100名学生在上课。游戏的规则是:

  1. 你首先说出三个不同的特殊数,要求必须是个位数,比如3、5、7。

  2. 让所有学生拍成一队,然后按顺序报数。

  3. 学生报数时,如果所报数字是第一个特殊数(3)的倍数,那么不能说该数字,而要说Fizz;如果所报数字是第二个特殊数(5)的倍数,那么要说Buzz;如果所报数字是第三个特殊数(7)的倍数,那么要说Whizz。

  4. 学生报数时,如果所报数字同时是两个特殊数的倍数情况下,也要特殊处理,比如第一个特殊数和第二个特殊数的倍数,那么不能说该数字,而是要说FizzBuzz, 以此类推。如果同时是三个特殊数的倍数,那么要说FizzBuzzWhizz。

  5. 学生报数时,如果所报数字包含了第一个特殊数,那么也不能说该数字,而是要说相应的单词,比如本例中第一个特殊数是3,那么要报13的同学应该说Fizz。如果数字中包含了第一个特殊数,那么忽略规则3和规则4,比如要报35的同学只报Fizz,不报BuzzWhizz。

现在,我们需要你完成一个程序来模拟这个游戏,它首先接受3个特殊数,然后输出100名学生应该报数的数或单词。

java代码如下

public  class Man {

int int1;
int int2;
int int3;
static int index=1;
static String str1="三";
static String str2="五";
static String str3="七";
String string="";

public static void main(String[] args) {
    Man man=new Man(3,5,7);
    for(int i=1;i<=100;i++){
        System.out.println(man.toString());
    }

}
public  Man(int int1,int int2,int int3){
    this.int1=int1;
    this.int2=int2;
    this.int3=int3;
}
public  String toString(){
    if(index%10==int1){
        index++;
        return str1;
    }
    if(index%10==int2){
        index++;
        return str2;
    }
    if(index%10==int2){
        index++;
        return str3;
    }
    if(index%int1==0){
        string+=str1;
    }
    if(index%int2==0){
        string+=str2;
    }
    if(index%int3==0){
        string+=str3;
    }
    if(string==""){
        return Integer.toString(index++);
    }
    index++;
    String string1=string;
    string="";
    return string1;
}
1
0
查看评论
发表评论
* 以上用户言论只代表其个人观点,不代表CSDN网站的观点或立场

2017 ThoughtWorks校招编程作业(C++版)

题目小明是一个羽毛球爱好者,考虑到许多人喜欢打羽毛球但是找不大球友,他打算成立一个羽毛球俱乐部,不定期组织羽毛球活动,活动可以是每周的任一时段,每次时间为2小时或3小时。参加活动的人每次付给小明30元...
  • u012924019
  • u012924019
  • 2016-10-19 14:54
  • 1607

thoughtworks面试总结

过程 1.主动投的简历,投简历过后很快就收到了HR的回复,然后约第二天半个小时的电话面试,就是基本情况的了解。就问一下当前的技术状况,学习状况,然后举例子当前项目中遇到的问题,怎么解决的。然后最后是聊...
  • JKINGCL
  • JKINGCL
  • 2014-01-16 16:23
  • 9767

ThoughtWorks笔试题汇总

ThoughtWorks笔试题汇总ThoughtWorks电话面试过后,会给三个题目,三个工作日后提交到指定目录即可。 相关题目如下: Problem one: TrainsThe local c...
  • u012006909
  • u012006909
  • 2016-09-13 10:17
  • 3762

剑指Offer 面试题34:二叉树中和为某一值的路径 Java代码实现

题目:输入一棵二叉树和整数,打印出二叉树中节点值得和为输入整数的所有路径。从树的根节点开始往下一直到叶节点所经过的节点形成一条路径。 解题思路:路径从根节点开始,应该用类似于前序遍历的方式访问树节点...
  • hh_zheng
  • hh_zheng
  • 6天前 21:09
  • 9

剑指Offer 面试题31:栈的压入、弹出序列 Java代码实现

题目:输入两个整数序列,第一个序列表示栈的压入顺序,请判断第二个序列是否为该栈的弹出顺序。假设压入栈的所有数字均不相等。 解题思路:判断一个序列是不是栈的弹出顺序的规律:如果下一个弹出的数字刚好是栈...
  • hh_zheng
  • hh_zheng
  • 6天前 20:21
  • 11

剑指Offer 面试题19:正则表达式匹配 Java代码实现

题目:正则表达式匹配 请实现一个函数用来匹配包含'.'和'*'的正则表达式。字符'.'表示任意一个字符,而'*'表示它前面的字符可以出现任意次(包含0次) 主要思想就是字符的第...
  • hh_zheng
  • hh_zheng
  • 2017-11-20 19:58
  • 54

剑指Offer 面试题18:删除链表节点 Java代码实现

题目:在O(1)时间内删除链表节点。 给定单向链表头指针和一个节点指针,定义一个函数在O(1)时间内删除该节点。 这儿采用有头结点的单链表结构,头结点的存在是为了方便操作,针对单链表来说,如果带头...
  • hh_zheng
  • hh_zheng
  • 2017-11-16 22:08
  • 41

剑指Offer 面试题17:打印从1到最大的n位数 Java代码实现

题目:输入数字n,按顺序打印从1到最大的n位的十进制数。比如,输入3,则打印出1、2、3一直到999。 这个题目好像很简单,求出最大的n位数,然后for循环打印就好了。但是Java中int类型的范...
  • hh_zheng
  • hh_zheng
  • 2017-11-14 21:40
  • 38

剑指Offer 面试题23:链表中环的入口节点 Java代码实现

题目描述 一个链表中包含环,请找出该链表的环的入口结点。 这题又用到了一快一慢两个指针的方法,快指针一次走两步慢指针一次走一步。可以证明,若存在环路,则这两个指针一定会在环路中某个地方相遇。这也是检...
  • hh_zheng
  • hh_zheng
  • 2017-11-29 22:07
  • 28

剑指Offer 面试题22:链表中倒数第k个节点 Java代码实现

题目 输入一个链表,输出该链表中倒数第k个结点。 这个问题可以用两个链表指针来实现,这个方法在单向链表的问题中经常使用。具体而言,就是一快一慢两个指针,快指针先走(k-1)步,然后两个指针同时走,当...
  • hh_zheng
  • hh_zheng
  • 2017-11-26 13:28
  • 49
    个人资料
    • 访问:481次
    • 积分:15
    • 等级:
    • 排名:千里之外
    • 原创:1篇
    • 转载:0篇
    • 译文:0篇
    • 评论:0条
    文章存档