#include<iostream>  

 using namespace std; 

 const int maxn =+;  

 char s[maxn],t[maxn];  

 int  main(){
//freopen("10.in", "r", stdin);
//freopen("10.out", "w", stdout);
int n;
cin >> n;
for(int i = ; i <= n; i ++){
cin >> s >> t;
cout << "Case " << i << ": ";
int s1 = , t1 = , q1 = , num = ;
int len = strlen(s);
for(int j = ; j < len; j ++){
if(t[j] == '') t1 ++;
if(s[j] == '') s1 ++;
if(s[j] == '?'){
q1 ++;
num ++;
}
if(s[j] == '?' && t[j] == ''){
s[j] = '';
s1 ++;
q1 --;
}
}
if(s1 + q1 < t1){
cout << "-1" << endl;
continue;
}
int sum = t1 - s1;
int s0 = , s2 = ;
for(int k = ; k < len; k ++){
if(s[k] == '' && t[k] == '') s0++;
}
if(sum > ){
s0 += sum;
}
num += s0;
cout << num << endl;
}
return ;
}

有本事打开啊!!!

uva12545的更多相关文章

  1. uva12545 Bits Equalizer

    uva12545 Bits Equalizer You are given two non-empty strings S and T of equal lengths. S contains the ...

  2. uva12545 比特变换器(贪心)

    uva12545 比特变换器(贪心) 输入两个等长的串S,T(长度小于100),其中S包含字符0,1,?,T中包含0和1.有三种操作:将S中的0变为1,?变为0或1,交换S中的任意两个字符.求将S变成 ...

  3. 8-3 Bits Equalizer uva12545

    题意: 给出字符串s包含'0' '1' '?'; 再给出字符串t只包含01: 现在我们可以对S做三个操作:把0变成1,把?变成0或1,任意两个位置交换: 问最少操作几次s == t: 贪心 默认除去那 ...

  4. UVa 12545 比特变换器

    https://vjudge.net/problem/UVA-12545 题意:输入两个等长的串S和T,其中S包含字符0,1,?,但T只包含0和1. 用尽量少的步数把S变成T.每步有3种操作: ①把S ...

随机推荐

  1. 释放锁标记只有在Synchronized代码结束或者调用wait()。

    释放锁标记只有在Synchronized代码结束或者调用wait(). 注意锁标记是自己不会自动释放,必须有通知. 注意在程序中判定一个条件是否成立时要注意使用WHILE要比使用IF要严密. WHIL ...

  2. Ubuntu16.04首次root登录设置

    一.首次登录root模式设置 当第一次安装并登录Ubuntu16.04系统时,系统默认只能使用guest模式登录.登录系统后,在图像界面的右上方的系统设置中可转换为普通用户模式. 在普通登录模式下,经 ...

  3. [原]Jenkins(十九) jenkins再出发之jenkins邮件通知

    1.下载插件: 2.配置插件: 3.邮件插件配置 4.设置触发器:

  4. 如何使用LinkedHashMap来实现一个LruCache

    最近在看mybatis的源代码,发现了mybatis中实现的LruCache使用到了LinkedHashMap,所以就探究了一下LinkedHashMap是如何支持Lru缓存的 LinkedHashM ...

  5. 11.11luffycity(5)

    2018-11-11 17:52:46 昨天和今天把两个接口写完啦! 今天双十一,感觉没啥感觉!!!买了个耳机,原价24, -5-7.  最后12买了 由于这个今天没源码,所以贴上笔记, 越努力,越幸 ...

  6. python API whoami

    import getpass print getpass.getuser() See the documentation of the getpass module. getpass.getuser( ...

  7. Git Bash上传文件

    今天通过Git Bash上传了一个项目(之前是通过Github Desk上传的),操作命令如下: 在目录下shift+右键打开Git Bash 1.git init 2.git add *.py 3. ...

  8. 固定浮动侧边栏(SmartFloat)

    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/ ...

  9. HTML调用PC摄像头【申明:来源于网络】

    HTML调用PC摄像头[申明:来源于网络] ---- 地址:http://www.oschina.net/code/snippet_2440934_55195 <!DOCTYPE html> ...

  10. linux --- 部署前后端分离项目

    vue + uwsgi +nginx 部署前后端分离项目 准备项目 1.将前端vue项目包和后端django项目包上传服务器,通过lrzsz,直接从windows拖进linux中 2.解压缩操作 前端 ...