CF1523A.Game of Life

普及/提高-

通过率:0%

AC君温馨提醒

该题目为【codeforces】题库的题目,您提交的代码将被提交至codeforces进行远程评测,并由ACGO抓取测评结果后进行展示。由于远程测评的测评机由其他平台提供,我们无法保证该服务的稳定性,若提交后无反应,请等待一段时间后再进行重试。

题目描述

William really likes the cellular automaton called "Game of Life" so he decided to make his own version. For simplicity, William decided to define his cellular automaton on an array containing nn cells, with each cell either being alive or dead.

Evolution of the array in William's cellular automaton occurs iteratively in the following way:

  • If the element is dead and it has exactly 11 alive neighbor in the current state of the array, then on the next iteration it will become alive. For an element at index ii the neighbors would be elements with indices i1i - 1 and i+1i + 1 . If there is no element at that index, it is considered to be a dead neighbor.
  • William is a humane person so all alive elements stay alive.

Check the note section for examples of the evolution.

You are given some initial state of all elements and you need to help William find the state of the array after mm iterations of evolution.

输入格式

Each test contains multiple test cases. The first line contains the number of test cases tt ( 1t1031 \le t \le 10^3 ). Description of the test cases follows.

The first line of each test case contains two integers nn and mm ( 2n103,1m1092 \le n \le 10^3, 1 \le m \le 10^9 ), which are the total number of cells in the array and the number of iterations.

The second line of each test case contains a string of length nn made up of characters "0" and "1" and defines the initial state of the array. "1" means a cell is alive and "0" means it is dead.

It is guaranteed that the sum of nn over all test cases does not exceed 10410^4 .

输出格式

In each test case output a string of length nn , made up of characters "0" and "1" — the state of the array after mm iterations of evolution.

输入输出样例

  • 输入#1

    4
    11 3
    01000000001
    10 2
    0110100101
    5 2
    10101
    3 100
    000

    输出#1

    11111001111
    1110111101
    10101
    000

说明/提示

Sequence of iterations of evolution for the first test case

  • 01000000001 — initial state
  • 11100000011 — first iteration of evolution
  • 11110000111 — second iteration of evolution
  • 11111001111 — third iteration of evolution

Sequence of iterations of evolution for the second test case

  • 0110100101 — initial state
  • 1110111101 — first iteration of evolution
  • 1110111101 — second iteration of evolution
首页