题目描述:

原题是纯英文,大意是:你每天可以选择一门课去学习,选题和提交答案。题目为Coding或者Jamming。选的题目如果和老师选的一致,提交答案也匹配,最后可以得10分,若选题不一致只能得5分。若提交答案不一致要扣五分。求最大的得分总和。

题目样例:

input:

5
CCJJ
CCJJ
CJCJ
JCCJ
CCCCCC

output:

Case #1: 20
Case #2: 20
Case #3: 10
Case #4: 20
Case #5: 30

解题思路:把问题化为用栈可以解决的括号匹配问题。可以完全实现括号匹配时一组算10分,无法括号匹配时一组算5分。

这里使用了stl模板(真是太棒了!),而且提交文件的时候它检测程序会给你一个样例文本让你保存到本地文件夹,而后把输出样例放到另一个文件中。(系统只负责对答案,不负责运行),所以代码中还加入了读写文件的代码。

 #include<iostream>
#include<stack>
#include<cstdio>
using namespace std;
int main()
{
freopen("in.txt","r",stdin);
freopen("out.txt","w",stdout);
int t;
cin>>t;
for(int j=; j<=t; j++)
{
stack<char>S;
string s;
cin>>s;
int ans=;
for(int i=; i<s.size(); i++)
{
if(S.empty()||S.top()!=s[i])
{
S.push(s[i]);//不一致时把字符串顶端推进来
}
else //否则发生匹配
{
S.pop();ans+=;
}
}
ans+=S.size()/*;
printf("Case #%d: %d\n",j,ans);
} }

Google CodeJam 2016 round3-A.Teaching Assistant的更多相关文章

  1. Google Codejam 2016 Round1A Problem C BFFs 简单图论

    链接 Google Codejam 2016 Round1A Problem C BFFs 题意 n个小朋友要坐成一个圈.每个小朋友心中都有一个Best Friend Forever.要保证每个人的左 ...

  2. 回顾Google IO 2016 -Keynote【图解】

    Google IO大会倒计时进行中~~ 两名演奏者在使用高空“古筝”. 最后5秒倒计时~~~~全场轰动~ 倒计时结束,IO大会正式开始.屏幕中,一个人把纯白的唱片放入唱片机中. 然后欢快的音乐响起,台 ...

  3. [Google Codejam] Round 1A 2016 - The Last Word

    [Problem Description] Problem On the game show The Last Word, the host begins a round by showing the ...

  4. 2018 C++ Teaching Assistant Summary

    期末考结束后就留校开始了科研,最近刚回家休息了两三天,整理了思绪,准备补上这一篇拖延了一个多月的助教小结. 早在一年多前我上栋哥这门课时,我就十分乐意给予同学帮助,无论是技术上的,还是说思想上的(也可 ...

  5. Technical Development Guide---for Google

    Technical Development Guide This guide provides tips and resources to help you develop your technica ...

  6. Google Careers 程序员必修课

    quote from : https://www.google.com/about/careers/students/guide-to-technical-development.html Techn ...

  7. Google发布跨云Serverless管理平台Knative

    企业只要使用由Google与Pivotal.IBM.红帽和SAP等企业共同开发的跨云Serverless管理平台Knative,就能在支持Kubernetes的云平台上自由的迁移工作负载,无论是跨私有 ...

  8. Google 新推出Background sync API

    Background sync是Google新推出的Web API,可延迟用户行为,直到用户网络连接稳定.这样有助于保证用户想要发送的数据就是实际发送的数据. 目前存在的问题 网络是消磨用户时间最多的 ...

  9. GCM(Google Cloud Messaging)推送完全解析

    应该是目前为止全网最详细的GCM推送解析. GCM官方解释: https://developers.google.cn/cloud-messaging/?hl=zh-cn Send data from ...

随机推荐

  1. checked 选择框选中

    移除属性,两种方式都可 $browsers.removeAttr("checked"); $browsers.attr("checked",false); // ...

  2. noip2017d1t3

    其实是参考洛谷上某篇题解的思路: 先求出两个dis数组表示从1走和从n走的最短路: 转移方程:dp[v][dis1[u]-dis1[v]+w+j]+=dp[u][j]; 转移顺序要注意一下呢,肯定是先 ...

  3. MySQL中数据的基本查询方式

    1.查询所有列 select * from 表名称; 2.查询指定列 select 字段名,字段名,字段名 from 表名称; 3.查询时添加常量列(临时备注) select 字段名,字段名,字段名, ...

  4. svn本地如何切换账号

    SVN如何切换账号   在使用svn更新或提交数据时需要输入用户名和密码,在输入框中可以选择是否记录,以便下次操作无需再次输入用户名和密码: 要切换其他用户名时,需要删除已记录用户的数据,在电脑桌面上 ...

  5. web-day2

    第2章WEB02-CSS&JS篇 今日任务 使用CSS完成网站首页的美化 使用CSS完成网站注册页面的美化 使用JS完成简单的数据校验 使用JS完成图片轮播效果 教学导航 教学目标 了解CSS ...

  6. verilog选择数据类型时常犯的错误

    •    信号可以分为端口信号和内部信号.出现在端口列表中的信号是端口信号,其它的信号为内部信号. •    对于端口信号,输入端口只能是net类型.输出端口可以是net类型,也可以是register ...

  7. AngularJS 路由 resolve属性

    当路由切换的时候,被路由的页面中的元素(标签)就会立马显示出来,同时,数据会被准备好并呈现出来.但是注意,数据和元素并不是同步的,在没有任何设置的情况下,AngularJS默认先呈现出元素,而后再呈现 ...

  8. Implementation of WC in JAVA

    Implementation of WC in JAVA github地址 相关要求 基本功能 -c [文件名] 返回文件的字符数 (实现) -w [文件名] 返回文件的词的数目 (实现) -l [文 ...

  9. Windows下Node.js的安装与配置

    一.下载和安装 1. 前往官网https://nodejs.org/或https://nodejs.org/en/download/下载最新推荐版的Node.js,本文使用10.13.0版本. 对于W ...

  10. MySQL--binlog和relay log的生成和删除

    ##================================================================================================== ...