`
pleasetojava
  • 浏览: 750836 次
  • 性别: Icon_minigender_2
  • 来自: 上海
文章分类
社区版块
存档分类
最新评论

ACM零件C++实现

 
阅读更多
零件
Description
有一种工业零件,分成左右两半,它们的形状由’X’和空格表示的二维图形表示,比如:左半的零件形状如下:
XXXXX
XXX
XXXX
XXX
右半的零件的形状如下
XXX
XXXX
XXXX
XXXXX
所有的左半边的零件的左边第一列都是X,所有右半的零件的右边第一列都是X。
把这样的左右两个零件紧密地拼在一起,则可能存在空洞。零件本身也可能有空洞,但不会存在断裂的零件,每个空洞为一个空格,要求你写一个程序求出空洞的大小(空格的数目)。
输入:
第一行是一个整数K,表示有多少个测试用例,以后每一个测试用例占2n+1行。每个测试用例的第一行为一个整数n,(1<=n<=20),从第2行到n+1行为左半零件的二维图形,从第n+2行到2n+1行为右半零件。左半零件左对齐,最长一行不超过25列,
右半零件右对齐,最长一行不超过25列
输出:

每行输出一个测试用例的结果。
Sample Input
2
4
XXXXX
XXX
XXXX
XXX
XXX
XXXX
XXXX
XXXXX
2
XXXXX
X
XXXXX
XXX

Sample Output
1
6

#include<iostream>
using namespace std;
char a[21][25],b[21][25];
int len[42];


int main()
{
int k,n;
cin>>k;
while(k--)
{
cin>>n;
getchar();
int i,j,sum1=0,sum2=0;
for(i=0;i<n;i++) gets(a[i]);
for(i=0;i<n;i++) gets(b[i]);
for(i=0;i<n;i++)
{
sum1=0;sum2=0;
for(j=0;j<strlen(a[i]);j++)
{
if(a[i][j]=='X')
sum1++;
}
for(j=0;j<strlen(b[i]);j++)
{
if(b[i][j]=='X')
sum2++;
}
len[i]=sum1;
len[i+n]=sum2;
}
int max=0;
for(i=0;i<n;i++)
{
if(len[i]+len[i+n]>max)
max=len[i]+len[i+n];
}
int sum=0;
sum=n*max;
for(i=0;i<n;i++)
{
sum=sum-len[i]-len[i+n];
}
cout<<sum<<endl;
}
return 0;
}


分享到:
评论

相关推荐

    基于C++实现的ACM-ACM竞赛常用模板

    这个“基于C++实现的ACM竞赛常用模板”是一个集成了ACM比赛常见问题解决方案的代码库,可以帮助参赛者快速理解和解决各种竞赛题目。 首先,模板通常包括基础数据结构和算法的实现,例如: 1. **排序算法**:快速...

    ACM ICPC程序设计与分析(C++实现)

    《ACM ICPC程序设计与分析(C++实现)》是一本专为参与ACM国际大学生程序设计竞赛(International Collegiate Programming Contest, 简称ICPC)的参赛者及对此领域感兴趣的程序员编写的指导书籍。书中深入探讨了在...

    ACM&C++实用技巧与模板库

    ### ACM&C++实用技巧与模板库 #### 一、引言 在计算机科学领域,特别是针对ACM(Association for Computing Machinery)竞赛等编程比赛,掌握高效且简洁的编程技巧至关重要。C++作为这类比赛中最常用的语言之一,...

    acm程序设计 c++实现

    详细讲述了acm的编程及各种算法知识,书中代码全部用c++实现,对c++泛型编程也有着极大地帮助

    acm连连看源码c++ 实现

    这是一道比较经典的剪枝题目,如果不仔细考虑到 题目特性,就不能了解到搜索的速度

    基于C++的ACM模板

    **基于C++的ACM模板**是用于解决算法竞赛(如国际大学生程序设计竞赛ICPC或ACM/ICPC)中的编程问题的一种高效框架。在这些竞赛中,参赛者需要编写程序来解决各种数学和逻辑问题,速度和准确性是关键。C++语言因其...

    ACM_OJ_程序设计基础课程资料.rar_ACM_C++_pathon

    标题中的"ACM_OJ_程序设计基础课程资料.rar_ACM_C++_pathon"表明这是一个关于ACM(国际大学生程序设计竞赛)在线判题(Online Judge,简称OJ)的课程资料,主要涵盖C++和Python两种编程语言。这个压缩包可能是为参与...

    【自用】ACM-C++

    【自用】ACM-C++ 是一个集合了多种资源的压缩包,主要针对参与 ACM(国际大学生程序设计竞赛)的选手,尤其是那些使用 C++ 语言进行编程的参赛者。这个压缩包包含了不同类型的文件,旨在帮助用户提高在ACM比赛中的...

    基于C++实现的ACM-ACM竞赛常用模板文件

    “基于C++实现的ACM竞赛常用模板文件”是一个旨在帮助ACM参赛者快速掌握和应用ACM比赛中常见问题解决方案的代码库。这些模板经过精心设计,能够为参赛者提供一个清晰的框架,使他们能够在短时间内理解并解决各类算法...

    ICPC-ACM_C++_Codeforces_

    【ICPC-ACM_C++_Codeforces_] 这个标题揭示了我们即将探讨的是一个与ACM(国际大学生程序设计竞赛)相关的主题,而使用的编程语言是C++,并且这个话题与Codeforces平台上的算法比赛题目有关。Codeforces是一个全球...

    c++ acm吃糖果

    acm吃糖果的题目,自己根据提示写的比较简单的代码,欢迎指正

    ACM模板和一些题目的代码实现c++源码.zip

    ACM模板和一些题目的代码实现c++源码.zipACM模板和一些题目的代码实现c++源码.zipACM模板和一些题目的代码实现c++源码.zipACM模板和一些题目的代码实现c++源码.zipACM模板和一些题目的代码实现c++源码.zipACM模板和...

    C++ STL库函数总结(纯手打,主要偏向ACM竞赛方面使用)

    C++ STL 库函数总结是指 C++ 标准模板库(Standard Template Library)的函数总结,主要用于 ACM 竞赛方面的应用。本总结涵盖了 STL 库的集合(set)部分,包括其定义、成员函数、迭代器、元素操作等方面的知识点。 ...

    基于C++的ACM-ICPC模板

    总的来说,这个基于C++的ACM-ICPC模板是参赛者在备赛过程中必不可少的工具,它可以帮助参赛者专注于算法设计,而不需要花费过多精力在代码实现的细节上。通过学习和使用这套模板,选手可以提升自己的编程效率,提高...

    ACM经典C++题目:Gone Fishing算法详解及源代码.doc

    ACM经典C++题目:Gone Fishing算法详解及源代码.doc

    acm模板_acm模板

    ACM 模板详解 ACM(Association for Computing Machinery)模板是指一类用于记录算法竞赛代码的模板,通常包含了数据结构、算法、数学公式等多方面的知识点。本文将对 ACM 模板的结构和内容进行详细的解释,并对...

    北大acm1002题

    ACM竞赛通常采用C++作为主要编程语言,因此我们可以推测这个题目需要使用C++来编写解决方案。C++是一种强大的、高效的编程语言,特别适合处理计算密集型任务。然而,要解决性能问题,仅仅掌握语法是不够的,还需要...

    ACM杭电1002 C++程序

    标题 "ACM杭电1002 C++程序" 指向的是一个与ACM国际大学生程序设计竞赛相关的题目,具体是杭州电子科技大学(Hangzhou Dianzi University)在线评测系统上的第1002号问题。这个问题要求用C++编程语言来解决大数相加...

    ACM大数模板(c/c++)

    ACM中的常用高精度模板,内容:大数加法,大数乘小数,大数乘大数,大数除法。

    基于C++实现的ACM-ACM竞赛常用模板源代码

    “基于C++实现的ACM竞赛常用模板源代码”这一代码库是专门为ACM竞赛选手量身打造的工具,它集合了ACM竞赛中最常见的问题类型及其解决方案。通过这些模板代码,参赛者可以快速掌握各类问题的解决思路,节省宝贵的编码...

Global site tag (gtag.js) - Google Analytics