当前位置:网站首页>1529. Minimum number of suffix flips
1529. Minimum number of suffix flips
2022-07-06 16:08:00 【mrbone9】
Address :
Power button
https://leetcode-cn.com/problems/minimum-suffix-flips/
subject :
Give you a length of n 、 Subscript from 0 Starting binary string target . You have another length of n Binary string of s , At first, everyone was 0 . You want to make s and target equal .
In one step , You can choose the subscript i(0 <= i < n) And flip on Closed interval [i, n - 1] All bits in . Flipping means '0' Turn into '1' , and '1' Turn into '0' .
Return to make s And target Equal the minimum number of flips required .
Example 1:
| Input :target = "10111" Output :3 explain : first ,s = "00000" . Select subscript i = 2: "00000" -> "00111" Select subscript i = 0: "00111" -> "11000" Select subscript i = 1: "11000" -> "10111" To achieve the goal , You need at least 3 Time flip . |
Example 2:
| Input :target = "101" Output :3 explain : first ,s = "000" . Select subscript i = 0: "000" -> "111" Select subscript i = 1: "111" -> "100" Select subscript i = 2: "100" -> "101" To achieve the goal , You need at least 3 Time flip . |
Example 3:
| Input :target = "00000" Output :0 explain : because s Already equal to the goal , So no operation is required |
Tips :
| n == target.length 1 <= n <= 105 target[i] by '0' or '1' |
source : Power button (LeetCode)
link :https://leetcode-cn.com/problems/minimum-suffix-flips
Copyright belongs to the network . For commercial reprint, please contact the official authority , Non-commercial reprint please indicate the source .
Ideas :
First of all, flip the figure under the hand animation , Finding the law
such as :10111
00000
00111
01000
10111
If you can't see clearly for the time being , On the contrary, you can see clearly , Change the topic to how to change a string into 0 The number of times
Then from left to right , We saw 1, You have to do a flip , Then next , It happens to be in reverse order
But how to implement the code ? A little bit of a problem
Then watch , If the intermediate element is adjacent and of the same type , Such as fellow 1, Or both 0
When we flip, we actually flip together , Then we can regard these same types as only one
such as :1010001, Let's reverse the order
| 1010001 | 0101110 |
| 0101110 | 0010001 |
| 0010001 | 0001110 |
| 0001110 | 0000001 |
| 0000001 | 0000000 |
After optimization, it is :10101 Flip of
The exact number of flips is Of this string 1 Starting length ,
If it is 0 Opening remarks :00110, In fact, it is seen as 10, The length is 2
If you don't believe it, you can try
When such a rule is found, it is much easier to implement the code
Method 1 、 Count the number of strings
int minFlips(char * target){
char *s = target;
int cnt = 0;
int i =0;
char prev = '0';
while(s[i])
{
if(s[i] != prev)
{
cnt++;
prev = s[i];
}
i++;
}
return cnt;
}边栏推荐
- 【练习-2】(Uva 712) S-Trees (S树)
- 栈的经典应用—括号匹配问题
- B - 代码派对(女生赛)
- HDU - 6024 building shops (girls' competition)
- Socket communication
- 628. Maximum product of three numbers
- Luogu P1102 A-B number pair (dichotomy, map, double pointer)
- Opencv learning log 29 -- gamma correction
- F - birthday cake (Shandong race)
- 【练习-4】(Uva 11988)Broken Keyboard(破损的键盘) ==(链表)
猜你喜欢

1010 things that college students majoring in it must do before graduation
![[exercise-4] (UVA 11988) broken keyboard = = (linked list)](/img/59/78ca7170ab1fd364ec44cfbcdc7ab5.png)
[exercise-4] (UVA 11988) broken keyboard = = (linked list)

C language is the watershed between low-level and high-level

Penetration test (2) -- penetration test system, target, GoogleHacking, Kali tool

Basic Q & A of introductory C language

洛谷P1102 A-B数对(二分,map,双指针)

Penetration testing (5) -- a collection of practical skills of scanning King nmap and penetration testing tools

Determine the Photo Position

PySide6 信号、槽

Information security - threat detection - Flink broadcast stream broadcaststate dual stream merging application in filtering security logs
随机推荐
Shell脚本编程
【练习-6】(PTA)分而治之
Matlab comprehensive exercise: application in signal and system
China potato slicer market trend report, technical dynamic innovation and market forecast
Perform general operations on iptables
STM32 how to use stlink download program: light LED running light (Library version)
Quick to typescript Guide
Research Report on surgical fluid treatment industry - market status analysis and development prospect prediction
b站 实时弹幕和历史弹幕 Protobuf 格式解析
Alice and Bob (2021牛客暑期多校训练营1)
Pyside6 signal, slot
【练习-2】(Uva 712) S-Trees (S树)
Nodejs+vue online fresh flower shop sales information system express+mysql
Record of brushing questions with force deduction -- complete knapsack problem (I)
Research Report of exterior wall insulation system (ewis) industry - market status analysis and development prospect prediction
Opencv learning log 16 paperclip count
Opencv learning log 32 edge extraction
D - Function(HDU - 6546)女生赛
JS call camera
Opencv learning log 30 -- histogram equalization