当前位置:网站首页>Blue Bridge Cup final XOR conversion 100 points
Blue Bridge Cup final XOR conversion 100 points
2022-07-07 16:59:00 【@Little safflower】
Problem description
The time limit : 3.0s Memory limit : 512.0MB The total score of this question :20 branch
Problem description
Xiaolan has one 01 strand s = s1s2s3 ⋅ ⋅ ⋅ sn.
Every moment in the future , Xiao Lan wants to be right about this 01 The string is transformed once . The rules for each transformation are the same .
about 01 strand s = s1s2s3 ⋅ ⋅ ⋅ sn, Transformed 01 strand s' = s'1s'2s'3 ⋅ ⋅ ⋅ s'n by :
s'1=s1;
s'i=si-1⊕si.
among a ⊕ b Represents the XOR of two binary systems , When a and b The result is 0 , When a and b
At different times, the result is 1.
Excuse me, , after t After several transformations 01 What is string ?Input format
The first line of input contains two integers n,t, respectively 01 The length of the string and the number of transformations .
The second line contains a length of n Of 01 strand .Output format
The output line contains a 01 strand , Is the transformed string .
The test sample 1
Input:
5 3
10110Output:
11010Explanation:
When the initial for 10110, Transformation 1 After three times, it becomes 11101, Transformation 2 After three times, it becomes 10011, Transformation 3 After three times, it becomes 11010.Evaluate use case size and conventions
about 40% The evaluation case of ,1 ≤ n ≤ 100 , 1 ≤ t ≤ 1000.
about 80% The evaluation case of ,1 ≤ n ≤ 1000 , 1 ≤ t ≤ 10^9.
For all profiling use cases ,1 ≤ n ≤ 10000 , 1 ≤ t ≤ 10^18.
Java
import java.util.Scanner;
public class XOR transformation {
public static void main(String[] args) {
Scanner scanner = new Scanner(System.in);
int n = scanner.nextInt();
int t = scanner.nextInt();
int circle = 1;
// The final rule is when greater than or equal to n One of the 2 In the case of an integer power of , There must be a cycle .
while(circle < n) {
circle <<= 1;
}
t %= circle;
char[] arr = scanner.next().toCharArray();
for(int i = 0;i < t;i++) {
for(int j = n - 1;j > 0;j--) {
if(arr[j] == arr[j - 1]) {
arr[j] = '0';
}else {
arr[j] = '1';
}
}
//System.out.println(new String(arr));
}
System.out.println(new String(arr));
}
}
边栏推荐
- LeetCode 1654. 到家的最少跳跃次数 每日一题
- Advanced C language -- function pointer
- 作为Android开发程序员,android高级面试
- 最新Android面试合集,android视频提取音频
- Personal notes of graphics (1)
- [PHP] PHP interface inheritance and interface multi inheritance principle and implementation method
- 【医学分割】attention-unet
- LeetCode-SQL第一天
- 【PHP】PHP接口继承及接口多继承原理与实现方法
- OpenGL personal notes
猜你喜欢
随机推荐
Advanced C language -- function pointer
LeetCode 1477. 找两个和为目标值且不重叠的子数组 每日一题
Skimage learning (3) -- gamma and log contrast adjustment, histogram equalization, coloring gray images
Temperature sensor chip used in temperature detector
打造All-in-One应用开发平台,轻流树立无代码行业标杆
Have fun | latest progress of "spacecraft program" activities
ATM system
Interface oriented programming
Tidb cannot start after modifying the configuration file
Master this set of refined Android advanced interview questions analysis, oppoandroid interview questions
【Seaborn】组合图表:PairPlot和JointPlot
Talk about the realization of authority control and transaction record function of SAP system
爬虫(17) - 面试(2) | 爬虫面试题库
两类更新丢失及解决办法
ByteDance Android gold, silver and four analysis, Android interview question app
QML初学
【Seaborn】组合图表、多子图的实现
Deep listening array deep listening watch
DAPP defi NFT LP single and dual currency liquidity mining system development details and source code
在哪个期货公司开期货户最安全?








