2016Hrbust软件学院ACM新生选拔赛(一)



1370: 1.JoJo酱是要成为ACM王的男人!

Time Limit: 1 Sec  Memory Limit:128 MB
Submit: 5  Solved: 5
[
Submit ][ Status ][ Web Board ][ Edit ] [ TestData ]

Description

荣誉,名声,妹纸,曾经拥有世界上一切的“ACM王” asdf,在临死前留下了一句话,让世界的人们,趋之若鹜奔向机房:“想要我的代码吗?想要的话可以给你,去找吧!我把一切都放在那里了!”,世界迎来了“撸代码时代”。

时代传承的意志,时代的变迁,人们的梦想。

只要人们继续追求Ac的快感,这一切的一切都将永不停止。

17岁的JoJo酱怀揣着梦想,奔向代码的海洋。

首先,他需要解决的第一个问题就是输出以下图案(注意每一行结束部分都没有多余的空格,建议复制):

        A           CCCCCCCCCCCCC          M           M
       A A          C                     M M         M M
      A   A         C                    M   M       M   M
     AAAAAAA        C                   M     M     M     M
    A       A       C                  M       M   M       M
   A         A      C                 M         M M         M
  A           A     CCCCCCCCCCCCC    M           M           M




Input

本题不需要任何输入

Output

输出题干中的图案

Sample Output

        A           CCCCCCCCCCCCC          M           M
       A A          C                     M M         M M
      A   A         C                    M   M       M   M
     AAAAAAA        C                   M     M     M     M
    A       A       C                  M       M   M       M
   A         A      C                 M         M M         M
  A           A     CCCCCCCCCCCCC    M           M           M

HINT


建议复制粘贴输出。(最后一行A字母前有空格)

Source

mengxiang000

题解: 按题意输出即可,注意别多(少)复制空格。

代码:



#include<iostream>
#include<cstdio>
#include<cstring>
#define ll long long
using namespace std;
int main()
{
    printf("      A           CCCCCCCCCCCCC          M           M\n");
    printf("     A A          C                     M M         M M\n");
    printf("    A   A         C                    M   M       M   M\n");
    printf("   AAAAAAA        C                   M     M     M     M\n");
    printf("  A       A       C                  M       M   M       M\n");
    printf(" A         A      C                 M         M M         M\n");
    printf("A           A     CCCCCCCCCCCCC    M           M           M\n");
}

1371: 2.JoJo酱的数学旅行

Time Limit: 1 Sec  Memory Limit:128 MB
Submit: 8  Solved: 4
[
Submit ][ Status ][ Web Board ][ Edit ] [ TestData ]

Description

JoJo酱为了成长起来,甚至周末都泡在机房里。这样勤奋努力的JoJo让一些妹纸对他芳心暗许,很多妹纸都喜欢问JoJo数学题,今年中秋节的时候,LaLa问JoJo这样一个问题:

给你三个数A,B,C,计算A+B-C的值。

JoJo酱觉得很难,觉得需要几分钟来思考,就对妹纸说,”给我一首歌的时间,我给你一个Ac的代码“。



Input

输入包含多组,处理到文件结束(EOF)

每组输入包含一行,三个元素:A,B,C(-10000<=A,B,C<=10000)

Output

每组输出结果占一行,表示A+B-C的值

Sample Input

8 1 5

Sample Output

4

HINT

Source

题解:

简单题 注意别忘了多组和!EOF

代码:


#include<iostream>
#include<cstdio>
#include<cstring>
#define ll long long
using namespace std;
int a,b,c;
int main()
{
    while(~scanf("%d%d%d",&a,&b,&c))
    {
        printf("%d\n",a+b-c);
    }
}

1372: 3.JoJo酱的追求者们

Time Limit: 1 Sec  Memory Limit:128 MB
Submit: 16  Solved: 8
[
Submit ][ Status ][ Web Board ][ Edit ] [ TestData ]

Description

JoJo酱帮助了LaLa妹纸之后,越来越多的妹纸过来问JoJo酱问题,JoJo酱为了方便记住妹纸的名字和长相,JoJo酱列了一个花名册,名册中一共包含n个妹纸的名字,并且从1-n将所有妹纸都编上了号,并且想要记录每个妹纸都一共问了自己多少道题,方便知道哪些妹纸和自己更加亲近一些。

JoJo酱估计手动统计这个问题需要上百年的时间,所以他就敲了一份代码,使得自己能够统计每个妹子都问了自己多少个问题。


Input

输入包含多组数据,处理到文件结束(EOF)

每组数据的第一行包含两个整数n(1<=n<=100),t(1<=t<=1000),表示一共有n个妹纸,一共问了t次问题

接下来一行,包含t个整数a(1<=a<=n)表示编号为a的小姑娘问了JoJo酱一个问题。


Output

每组数据输出包含n行。

每行包含一个整数,在第i行输出的值代表编号为i的妹纸问了JoJo多少道题

Sample Input

5 6
1 1 2 2 2 3

Sample Output

2
3
1
0
0

HINT

Source

题解: 中等题。桶排序,n个妹子相当于n个桶(活该没XXX系列),妹子编号为1-n相当于把桶编号为1-n,每次编号为i的妹子提问一个问题相当于往编号为i的桶里丢一瓶可乐,最后输出每个桶里可乐的数量。注意:每次循环都要把桶清空。

代码:


#include<iostream>
#include<cstdio>
#include<cstring>
#define ll long long
using namespace std;
int n,t,l;
int bucket[105];
int main()
{
    while(~scanf("%d%d",&n,&t))
    {
        for(int i=1;i<=n;i++)
            bucket[i]=0;
        for(int i=0;i<t;i++)
        {
            scanf("%d",&l);
            bucket[l]++;
        }
        for(int i=1;i<=n;i++)
        printf("%d\n",bucket[i]);
    }
}

1373: 4.JoJo酱的辉煌事迹

Time Limit: 1 Sec  Memory Limit:128 MB
Submit: 8  Solved: 6
[
Submit ][ Status ][ Web Board ][ Edit ] [ TestData ]

Description

一年后,JoJo来到了弗雷尔卓德大陆,夺得”循环“杯大赛冠军,又横跨了守望者之海,来到了艾欧尼亚,又夺得了”输出“杯大赛冠军,世界为了纪念JoJo酱的辉煌事迹,在哈尔滨举行了“循环输出”杯大赛,JoJo兴奋不已,连夜坐飞机赶回哈尔滨太平国际机场,参加出题工作。

JoJo所出的所有题目中,最引以自豪的题目内容是这样的:

输入一个整数n

输出JojoV5+n个感叹号。

那么你的任务,就是帮助JoJo炫耀他的辉煌事迹

Input

输入包含多组,每组数据包含一个整数n(0<=n<=100),表示要输出的感叹号的个数

Output

输出JojoV5+n个感叹号,具体参考样例输入输出(所有输出的字符都是英文的,不要误打中文符号)

Sample Input

5

Sample Output

JojoV5!!!!!

HINT

(所有输出的字符都是英文的,不要误打中文符号)

Source

mengxiang000

题解:简单题,注意大小写。

代码:


#include<iostream>
#include<cstdio>
#include<cstring>
#define ll long long
using namespace std;
int n;
int main()
{
    while(~scanf("%d",&n))
    {
        printf("JojoV5");
        for(int i=0;i<n;i++)
            printf("!");
        printf("\n");

    }
}

1374: 5.JoJo酱的旅行

Time Limit: 1 Sec  Memory Limit:128 MB
Submit: 27  Solved: 10
[
Submit ][ Status ][ Web Board ][ Edit ] [ TestData ]

Description

JoJo酱在漫长的修炼之后,决定到A城市继续磨练自己,JoJo酱便借了一头驴准备奔向A城市,已知到A城市的路径长度为L,初始的时候JoJo酱准备了p吨驴粮,驴每行进一个单位长度的路,就会消耗一吨驴粮,已知整条路径上有两个补充粮食的地方,位子分别是pos1,pos2,能够补充的粮食的吨数分别为a1,a2。假设JoJo酱可以抗无数吨粮食赶路,问从起点到A城市最少需要补充多少次粮食?如果JoJo酱到达不了A城市,那么输出TAT

Input

输入包含多组数据,处理到文件结束(EOF)

每组输入包含六个整数,L,p,pos1,a1,pos2,a2.

数据范围:

1<=L<=10000.0<pos1,pos2<L(pos1!=pos2)  1<=a1,a2<=10000




Output

每组输出对应一行,表示最少补充粮食的次数,如果到达不了A城市,输出TAT。

Sample Input

5 100 1 2 2 4
5 1 1 4 2 3
5 0 1 4 2 3

Sample Output

0
1
TAT

HINT

每个站点只能添加一次粮食

Source

mengxiang000

题解:难题 ,坑点很多,

1:pos1,pos2的位置需要判断,如果pos1>pos2,则pos2才是经过的第一个能量站,交换两个站的位置和能量值。

2:如果以p的能量就可以走完全程L,就不需要能量站。输出0

3:如果以p的能量能走过pos2站:如果p加上两个能量站的值都不能走到l,输出TAT,如果p加上两个能量站中较多的能量可以走到l,输出1.否则输出2

4:如果以p的能量能走过pos1站:如果p加上第一个能量站的能量不能到达pos2,输出TAT,如果p加第一个能量站的能量能到达l,输出1,如果p加上两个能量站的和可以到达l.输出2,否则输出TAT。

5:如果以p的能量不能到达pos1,输出TAT。


#include<iostream>
#include<cstdio>
#include<cstring>
#include<algorithm>
#define ll long long
using namespace std;
int l,p,pos1,a1,pos2,a2;
int main()
{
    while(~scanf("%d%d%d%d%d%d",&l,&p,&pos1,&a1,&pos2,&a2))
    {
        if(pos1>pos2)
        {
            swap(pos1,pos2);
            swap(a1,a2);
        }
        if(p>=l)
        {
            printf("0\n");
            continue;
        }
        else
        {
            if(p>=pos2)
            {
                if(p+a1+a2<l)
                {
                    printf("TAT\n");
                    continue;
                }
                else
                {
                    if(p+max(a1,a2)>=l)
                    {
                        printf("1\n");
                        continue;
                    }
                    else
                    {
                        printf("2\n");
                        continue;
                    }
                }
            }
            else if(p>=pos1)
            {
                if(p+a1<pos2)
                {
                    printf("TAT\n");
                    continue;
                }
                else
                {
                    if(p+a1>=l)
                    {
                        printf("1\n");
                        continue;
                    }
                    else
                    {
                        if(p+a1+a2>=l)
                        {
                            printf("2\n");
                            continue;
                        }
                        else
                        {
                            printf("TAT\n");
                            continue;
                        }
                    }
                }         }
            else
            {
                printf("TAT\n");
                continue;
            }
        }
    }
}

1375: 7.JoJo酱的网吧五连坐

Time Limit: 1 Sec  Memory Limit:128 MB
Submit: 10  Solved: 9
[
Submit ][ Status ][ Web Board ][ Edit ] [ TestData ]

Description

JoJo酱坐上了公交车,结识了四位来自322城市的大牛,欢天喜地的聊起了各自Acm的故事,JoJo酱了解到各位大神的世界OJ刷题数都达到了50000+题,激动不已,非常想要跟几位大牛一起刷几道难题切磋技艺,然后他们五个人在A城市的215路下了车,来到了一个网吧,决定找一个五连坐(就是五个人坐在一排)。

这儿的网吧有n行m列,其中一行中所有的座位都是相邻的,两行座位之间是空出来过道的。我们用一个n*m的矩阵来表示,其中“X”表示这个座位已经有人坐了,其中“O”(大写的欧),表示这个座位没有人坐。问他们是否能够找到一个五连坐。


Input

输入包含多组数据,处理到文件结束(EOF)

每组输入第一行包含两个整数,n,m,表示这个网吧有n行m列。

接下来n行,每行保证只有m个字符,“O”表示这个座位没有人占用,“X”表示这个座位已经有人占用了。

数据范围:

1<=n<=15 5<=m<=15

Output

如果他们五个人能够找到一个连坐,输出“Yes”,否则输出“No”

Sample Input

3 5
OOOOO
XXXXX
XXXXX
6 6
OOXOOO
OOXOOO
OOXOOO
OXOOOO
OOXOOO
OOXXXX

Sample Output

Yes
No

HINT

注意,每行的座位相连才叫连坐,每列的座位是不相邻的,题干中有说明,每两行座位之间是有过道的

Source

mengxiang000

题解:中等题,首先定义一个二维字符数组来存状态,对于每一行,查询是否有连续的5个‘O’,如果有,让标记变量flag=1,跳出即可(只要找到一个五连坐就可以),最后看标记是否为1, 注意大小写。

代码:

#include<iostream>
#include<cstdio>
#include<cstring>
#define ll long long
using namespace std;
char a[20][20];
int n,m;
int main()
{
    while(~scanf("%d%d",&n,&m))
    {
        for(int i=0;i<n;i++)
            scanf("%s",a[i]);
        int flag=0;
        for(int i=0;i<n;i++)
        {
            for(int j=0;j<m;j++)
            {
                if(a[i][j]=='O'&&a[i][j+1]=='O'&&a[i][j+2]=='O'&&a[i][j+3]=='O'&&a[i][j+4]=='O')
                {
                    flag=1;
                }
                if(flag)
                    break;
            }
            if(flag)
                break;
        }
        if(flag)
        {
            printf("Yes\n");
        }
        else
        {
            printf("No\n");
        }
    }
}

1376: 6.JoJo酱的第一次公交体验

Time Limit: 1 Sec  Memory Limit:32 MB
Submit: 6  Solved: 3
[
Submit ][ Status ][ Web Board ][ Edit ] [ TestData ]

Description

JoJo酱旅行到了A城市,A城市是高手云集的地方,JoJo酱听说A城市的某些景点是可以通过101公交车环行观看的,然后他就来到了一个公交车首发站点。JoJo酱来之前刚好发了一辆车且没有人候车。随后JoJo酱发现,每辆公交车只能坐m个人而且只有满员的时候才会发车。JoJo酱一共观察了n次,每次会多来a[i]个人。JoJo酱知道一共来了多少人后不用查就知道了一共发了几辆车、还剩下多少人。 相信同样聪明的你也是知道的。(注意Hint)

Input

输入一个正整数T,代表有T(≤10)组数据。

接下来一行输入两个正整数n,m。分别代表JoJo观察了n次,每辆公交车能坐m个人。

接下来一行包括n个正整数a[i] (≤100) 代表JoJo每次观察后多了的人数。

Output

在一行中输出两个数分别是发车的数量和剩下候车人数,这两个数用空格隔开。

在首发站台有无数的空车。

Sample Input

2
5 4
1 2 3 4 5
5 3
1 1 1 1 1

Sample Output

3 3
1 2

HINT

忽略JoJo酱没看到或者直接上车走了的情况。

Source

Tabris

题解:中等题,用sum记录人数,用ans记录发车的数量。对于Jojo的每一次观察,sum+=来的人数,然后判断sum中有多少个m,ans+=m的个数。sum变成剩下的人数,sum%=m,最后,输出ans和sum即可。

代码:

#include<iostream>
#include<cstdio>
#include<cstring>
#define ll long long
using namespace std;
int n,m,t,x;
int main()
{
    scanf("%d",&t);
    while(t--)
    {
        int ans,sum;
        ans=sum=0;
        scanf("%d%d",&n,&m);
        for(int i=0;i<n;i++)
        {
            scanf("%d",&x);
            sum+=x;
            ans+=(sum/m);
            sum%=m;
        }
        printf("%d %d\n",ans,sum);
    }

}

1377: 8.爱丽丝梦游仙境

Time Limit: 1 Sec  Memory Limit:128 MB
Submit: 4  Solved: 3
[
Submit ][ Status ][ Web Board ][ Edit ] [ TestData ]

Description

爱丽丝从6岁时进入过一次奇幻仙境后,她就总是觉得自己会做噩梦,梦见的都是奇幻仙境中那些不可思议的人和事。

距离那一次历险奇遇已经过去了十三年,曾经漫游奇境的爱丽丝已经19岁。生活在一个华丽富庶的大庄园里,衣食无忧,生活奢靡,在社会风气的带动下,渐渐的成长为家庭心目中所冀望的那种贵族女子,却早已忘却自己在6岁时的那些奇妙无比的经历。时光荏苒,在家族为她举办的19岁的生日宴会上,一位富豪的儿子向他求婚,对方是海密仕·艾斯科,海密仕虽然家财万贯,性格却愚笨而木讷,跟爱丽丝根本不是一路人。爱丽丝发觉到自己并不想要这样的生活,渴望改变现状的她在兔子先生的带领下,爱丽丝再次步入仙境。

为了拒绝海密仕的求婚,爱丽丝需要在奇幻仙境中收集正好n个自由果实,不能多也不能少。为了摘取自由果实,兔子先生带领爱丽丝来到了幽幻小径,在这条小径上,人们只能向前和后两个方向走。

兔子先生和爱丽丝来到了一条长度为s米的幽幻小径的一端,幽幻小径上长满了自由果实。这时,爱丽丝发现了红心王后在幽幻小径的另一端!

“是谁在那里!来人呐,砍掉他们的头!”红心王后生气地说。

糟了,只有兔子先生可以摘取自由果实,可是爱丽丝已经来不及对兔子先生说,要摘取多少自由果实了!

机智而又可爱的爱丽丝急中生智,对兔子先生说:“兔子先生,请你从我这里一直向前走,摘取自由果实,直到遇到红心王后,再返回来摘取自由果实,遇到我之后再返回去……如此反复,直到我和红心王后相遇。”【PS:来不及说那你还说那么多???】

话刚说完,红心王后就以v1(米每秒)的速度向爱丽丝跑去,爱丽丝也以速度v2(米每秒)向红心王后跑去。与此同时,兔子先生开始以v3(米每秒)的速度行动,摘自由果实,而兔子先生每走1米能且只能摘取一个自由果实,兔子先生在爱丽丝与红心王后之间不断往返摘取果实不作停歇。

在奔跑途中,爱丽丝微微一笑,从口袋中掏出一个神奇的奶油泡芙。吃下这个泡芙后,爱丽丝的身体会变大,爱丽丝的身体半径能以k米每秒的速度不断增长(变大过程中爱丽丝和红心王后还在不断奔跑)!

最后,爱丽丝和红心王后相遇,此时兔子先生正好摘取了n个自由果实。请问,爱丽丝究竟是在哪个时刻吃下奶油泡芙的?

没有吃奶油泡芙的爱丽丝和红心王后视为点,吃下泡芙后的爱丽丝因变胖而视作圆。在0时刻,爱丽丝和兔子先生在幽幻小径的一端,红心王后在另一端。从0时刻开始,爱丽丝、兔子先生和红心王后同时开始行动,爱丽丝与红心王后相遇的时刻,兔子先生停止摘取果实。爱丽丝吃泡芙一口吞,可忽略时间,兔子先生回头的时间忽略。红心王后不会因为爱丽丝变胖而看呆或者被吓到而停下或放慢脚步,爱丽丝变胖也不会影响其速度也不会变丑。兔子先生一定能摘取到足够的果实。求爱丽丝吃下奶油泡芙的时刻。输入数据保证最后答案为整数。

Input

数据输入:

多组输入数据,处理文件到结束(EOF)。

每组数据一行,输入6个整数,n,s,k,v1,v2,v3。分别代表需要摘取的自由果实数量(n),幽幻小径的长度(s),吃下奶油泡芙后身体半径增长速度(k),红心王后的奔跑速度(v1),爱丽丝的奔跑速度(v2),兔子先生的摘取速度(v3)。

0<n<1000000000;

0<s<1000000000;

0<k<100000;

0<v1<100000;

0<v2<100000;

0<v3<100000;

v3≥v2+k.

Output

对于每组样例,答案占一行。输出一个整数,代表爱丽丝吃下泡芙的时刻。

Sample Input

10 10 2 1 2 5
15 15 2 3 2 5

Sample Output

0
3

HINT

Source

LuLu

题解:难题,在两人碰面前,兔子先生一直在奔跑。我们利用n和v3 可以求出兔子先生的奔跑时间t。我们先假设没有吃泡芙内个条件,则在t时间内,两人的路程和k可以求出,现在实际的路程是s,路程差就是爱丽丝身体变大经过的距离,再通过k,求出这个身体变大的时间tt,一共的时间为t,身体变大到碰面的时间为tt,则身体开始变大时刻为t-tt。在计算过程中会出现小数,所以需要选择double

代码:

#include <stdio.h>
#include <stdlib.h>
#include <iostream>
using namespace std;
double n,k,s,v1,v2,v3;
int main()
{
    while(~scanf("%lf%lf%lf%lf%lf%lf",&n,&s,&k,&v1,&v2,&v3))
    {
        double t=n/v3;
        double ss=s-(v1+v2)*t;
        double tt=ss/k;
        printf("%.0lf\n",t-tt);
    }
    return 0;

}

1378: 9.JoJo酱的三角形

Time Limit: 1 Sec  Memory Limit:128 MB
Submit: 5  Solved: 5
[
Submit ][ Status ][ Web Board ][ Edit ] [ TestData ]

Description

JoJo酱在A城市玩的很开心,与四位大牛讨论了很多题,天很快就黑了下来,JoJo酱不舍与四位大牛就此分别,于是JoJo酱从口袋中拿出了n个魔法棒,想要拼接出来一个三角形的魔法环送给四位大牛。

但是JoJo酱觉得随便拼接出来一个三角形就送给人家显得太随意,他想从这n个魔法棒中取出一个最大周长的三角形送给他们,JoJo酱于是脑补了一个代码,很轻易的就找到了这三根魔法棒,同时也计算出了这个最大周长,当然也有可能JoJo酱用这n个魔法棒连一个三角形都拼接不出来,那么输出T_T。


Input

题目包含多组数据,处理到文件结束(EOF)

每组数据第一行输入一个整数n,表示JoJo酱有n个魔法棒(1<=n<=30)

接下来一行输入n个整数a1.a2............an,表示没根魔法棒的长度(1<=ai<=100)

Output

每组数据,输出一个整数sum,表示这个最大周长三角形的周长。

如果JoJo酱连一个三角形都没法组成,输出T_T

Sample Input

5
3 4 5 6 7
3
1 2 3

Sample Output

18
T_T

HINT

Source

mengxiang000

题解:中等题,把给出魔法棒按由小到大排序,每次我们取出长度最大的三根魔法棒I,j,k,(I>=j>=k)判断能否组成三角形,能,标记flag=1,ans记录边长和,跳出循环,最后判断标记是否为1,输出即可。

代码:

#include<iostream>
#include<cstdio>
#include<cstring>
#include<algorithm>
#define ll long long
using namespace std;
int a[40],n;
int main()
{
    while(~scanf("%d",&n))
    {
        for(int i=1; i<=n; i++)
            scanf("%d",&a[i]);
        sort(a+1,a+1+n);
        int ans=0;
        int flag=0;
        for(int i=n; i>=1; i--)
        {
            for(int j=i-1; j>=1; j--)
            {
                for(int k=j-1; k>=1; k--)
                {
                    if(a[j]+a[k]>a[i]&&a[i]-a[k]<a[j])//因为a[i]>a[j]>a[k],所以”任意两边之和大于第三边“只需要判断a[j]+a[k]>a[i],
                    {
                        ans=a[i]+a[j]+a[k];
                        flag=1;
                    }
                    if(flag)
                        break;
                }
                if(flag)
                    break;
            }
            if(flag)
                break;
        }
        if(flag)
            printf("%d\n",ans);
        else
            printf("T_T\n");
    }
}

1379: 10.JoJo酱在刷题

Time Limit: 1 Sec  Memory Limit:32 MB
Submit: 4  Solved: 2
[
Submit ][ Status ][ Web Board ][ Edit ] [ TestData ]

Description

JoJo终于从A城市回到了学校,作为一名要成为ACM王的男人的男人,JoJo酱要征服浩瀚的题海,于是日以继夜的刷题。

通过刷题JoJo知道数据在计算机中是用二进制表示的,于是JoJo酱学习了有关二进制的位运算。

正在学习位运算的JoJo酱遇到了一个非常easy的题目,很轻松的解决了。于是就把这道easy的题目分享给了你们。

题目大意:每次会给你两个二进制数,让你来求两者的异或值(位运算的一种,详见Hint)。

 

Input

第一行输入一个正整数T(≤20)。

接下来两行包括两个二进制数a,b(a,b的长度小于1000).输入保证a,b的长度相同且可能会含有前导0。

Output

输出这两个数的异或值(长度与输入保持一致),并换行。

Sample Input

2
010 100
000 111

Sample Output

110
111

HINT


在计算机语言中异或运算符为“^”,



异或运算是一种基于二进制下的一种运算,其规则如下:



对于两个二进制数每一位:(相同为0,不同为1);即:



0^0=0



0^1=1



1^1=0



1^0=1

Source

Tabris

题解:中等题,我们用字符串模拟异或运算,因为给出的两个串是等长的,每次我们判断a[i]和b[i]是否相等即可,相等输出0,否则输出1

代码:

#include<iostream>
#include<cstdio>
#include<cstring>
#include<algorithm>
#define ll long long
using namespace std;
int t;
char a[400],b[400];
int main()
{
    scanf("%d",&t);
    while(t--)
    {
        scanf("%s%s",a,b);
        int len=strlen(a);
        for(int i=0;i<len;i++)
        {
            if(a[i]!=b[i])
                printf("1");
            else
                printf("0");
        }
        printf("\n");
    }
}









  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值