uva12545】的更多相关文章

uva12545 Bits Equalizer You are given two non-empty strings S and T of equal lengths. S contains the characters `0', `1' and `?', whereas T contains `0' and `1' only. Your task is to convert S into T in minimum number of moves. In each move, you can…
uva12545 比特变换器(贪心) 输入两个等长的串S,T(长度小于100),其中S包含字符0,1,?,T中包含0和1.有三种操作:将S中的0变为1,?变为0或1,交换S中的任意两个字符.求将S变成T的最少步数. 首先考虑去掉问号.设S中1的个数为one1,T中1的个数为one2.在one1<one2的前提下,肯定是把问号填成与T中相同的数字更优.如果one1=one2,那么问号中只能填0.接着就是考虑将0变成1,相同的思路即可.最后等到one1=one2,统计S和T中不同的数字,计算出还要再…
#include<iostream> using namespace std; +; char s[maxn],t[maxn]; int main(){ //freopen("10.in", "r", stdin); //freopen("10.out", "w", stdout); int n; cin >> n; ; i <= n; i ++){ cin >> s >>…
题意: 给出字符串s包含'0' '1' '?'; 再给出字符串t只包含01: 现在我们可以对S做三个操作:把0变成1,把?变成0或1,任意两个位置交换: 问最少操作几次s == t: 贪心 默认除去那些已经相同的     然后收集四种信息 共有三种不同的情况  直接模拟即可 #include<bits/stdc++.h> using namespace std; #define N 200000+5 int main() { int n;cin>>n; char a[N],b[N]…
https://vjudge.net/problem/UVA-12545 题意:输入两个等长的串S和T,其中S包含字符0,1,?,但T只包含0和1. 用尽量少的步数把S变成T.每步有3种操作: ①把S中的0变成1:②把S中的“?”变成0或者1:交换S中任意两个字符. 思路:题目不是很难.首先考虑交换,然后再看有多少不同的,就需要再加上多少次. #include<string> #include<iostream> #include<algorithm> using na…