2018年搜狐秋季校招校招大数据研发笔试编程题—Kolakoski序列

/* 搜狐2018秋季校招 — Kolakoski序列
 * Kolakoski序列是个自生成的无限序列。
 * 例如,当给定的整数组为[1,2]时,Kolakoski序列是这样的:
 * [1,2,2,1,1,2,1,2,2,1,2,2,1,1,2,1,1,2,2,1,2,1,1,2,1,2,2,1,1...]
 * 如果我们将相邻的相同的数字分成一组,那么将会得到:
 * [[1],[2,2],[1,1],[2],[1],[2,2],[1],[2,2],[1,1],[2],[1,1]...]
 * 可以看出,每组数字交替由1,2组成。
 * 接下来对每个分组求他的长度,得到
 * [1,2,2,1,1,2,1,2,2,1,2 ...]
 * 可以看出,经过如上的变换后数列保持不变。
 * 
 * 输入描述:
 * 输入由两行组成:
 * 第一行包括两个正整数n,m
 * 第二行包括m个正整数a[]
 * 数据规模与限制:
 * 0<n<10000, 1<m<1000, 0<a[i]<1000
 * a[i]不等于a[i+1], a[0]不等于a[m-1]
 * 输出描述:
 * 每行一个数字,共n行
 * 整数组a生成的Kolakoski序列的前n项
 * 
 * 示例:
 * 输入
 * 30 4
 * 2 1 3 1
 * 输出
 * 2 2 1 1 3 1 2 2 2 1 3 3 1 1 2 2 1 3 3 3 1 1 1 2 1 3 3 1 1

 */


package com.bjut.study.test;

import java.util.Scanner;



public class Main_20170828_Sohu {
	public static void main(String[] args) {
		// TODO Auto-generated method stub
		Scanner in = new Scanner(System.in);
		while (true) {
			int n = in.nextInt();
			int m = in.nextInt();
			int[] nums = new int[m];
			int[] results = new int[n];
			for (int i = 0; i < m; i++) {
				nums[i] = in.nextInt();
			}
			int p = 0, t = 0, s = 0;
			results[0] = nums[0];
			while (t < n) {
				for (int i = 0; i < results[p]; i++) {
					results[t] = nums[s];
					t++;
				}
				if (s == 3)
					s = 0;
				else {
					s++;
				}
				p++;
			}
			for (int i = 0; i < n - 1; i++) {
				System.out.println(results[i]);
			}
		}
	}
}


  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
大数据面试笔试资料-56家互联网大公司面试笔试题资料整理汇总: hive面试.doc 京东.jpg 笔试题1.docx 笔试题10.jpg 笔试题11.JPG 笔试题12_搜狐 笔试题13_九章云极科技有限公司 笔试题14_北京东方国信科技股份有限公司-联通事业部-笔试笔试题15_百分点 笔试题16_Admaster 笔试题2.docx 笔试题3.docx 笔试题4_boss直聘.docx 笔试题5_面试题4的实现思路.docx 笔试题6.jpg 面试总结 面试题1.doc 面试题2.doc 面试题3.doc 面试题7+面试题8+面试题9_北京广视通达数字网络科技有限公司 中企动力面试总结?-面试题1 畅捷通(用友集团)?-面试题2 麦达数字面试?-面试题3 boss直聘面试?-面试题5 博易智软(北京)技术股份有限公司?面试题7 公安部第一研究所?面试题7 IBM?面试题7 车网互联?面试题7 凯立德科技股份有限公司?面试题7 北京捷通华声语音技术有限公司?面试题7 北京法意科技有限公司?面试题7 大树科技(重点)?面试题7 北京XXX宇有限公司??面试题8 盛世全景?面试题8 华胜天成?面试题8 联龙博通?面试题8 大麦网?面试9 京东金融?面试10 滴滴打车 架构师?面试11 神州?面试11 百分点科技?面试11 锐安科技?面试12---有笔试 人人贷?国舜科技?面试13 宜信?面试16 明略数据?面试17 爱奇艺面试?面试18---爱奇艺明确有背景调查,记在面试评测上面,由hr写背景调查评测----(直接卡死了) 奥维云网?面试26 喜马拉雅FM?中星电子?银橙传媒?面试27 电信云计算?面试题29 乐视?面试题29 优酷?面试题29 无双科技公司?面试题30 亿玛在线公司?面试题30 58同城?面试题30 talkingDate?面试题30 慕华信息科技有限公司?面试题30 美团网?面试题31 LeanCloud?面试题31 筑巢新游?面试题31 阿里巴巴?面试题32 博睿宏远?面试题33 融易通?面试题33 中国互联网络信息中心?面试题33? 优酷土豆?面试题33 乐视?面试题41 TalkingData?面试题41 网德天下?面试题41 东方国信?面试题41 畅捷通?面试题41 太极?面试题41 北京四中网校?面试题41 SenseTime?面试题41 易观智库?面试题41 银创科技?面试题41 京东?面试题41 壕鑫互连?面试题41 滴答拼车?面试题41

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值