水题不AC,自挂二叉树——Chemist
学长让我们刷USACO的水题果然是有道理的,做了四道挂了两道。。。细节处理一定要小心!大概都是NOIP Day1 T1的难度,但是一定要考虑全面否则还是凉凉啊。
一、USACO1.1贪婪的送礼者
题目链接:https://www.luogu.org/problemnew/show/P1201
一个人有一些钱分给一些伙伴,比如我有10块钱分给5个人每人2块(小学数学),当然如果数据都是这样当然很弱智,但是还需要考虑分不完的情况,比如10块钱分给3个人,每人三块,自己剩一块,多好多和谐。所以就是要在每次分时判断人数是否被钱数整除,如果整除直接分,否则每个人分int(money/num),自己剩money%num。
代码相信读者都会而且还会暴露笔者恶心的码风所以被和谐了。。。
二、USACO1.1坏掉的项链
题目地址:https://www.luogu.org/problemnew/show/P1203
由于是字符串环所以可以先将这个字符串复制一份接在后面每次取其中长度为n的一段,相当于在开头位置的断开,然后从两头往后判断是否为同一个字符。
需要考虑的细节:
1.得到的珠子个数大于n,比如r r r r的情况,从左可以取4个,从右可以取4个,一共8个,然而显然最多取4个。有两种处理方式:(1)直接在输出答案时判断,答案大于n就输出n,这时说明其中有重复取得珠子,只需将它给其中任意一边即可。(2)记录从左端取了mx1个,那么右端最多取n-mx1个。
2.w在一串珠子中只能代表一种颜色,比如rrwb的情况,从左取3个的话从右最多取1个,从右取2个的话从左最多取2个,然而这种情况都是与第一种情况重合的所以不用另做考虑。
3.在比较时不能单纯的将从左右开始的每一个元素只与左右端点的颜色比较,因为可能存在左右端点为w的情况,所以需要从左开始找到第一个不为w的颜色来作为参考,右边同理。
代码:
#include<bits/stdc++.h>
using namespace std;
int n;
char ch[];
int main()
{
cin>>n;
cin>>ch+;
for(int i=;i<=n;i++)
ch[i+n]=ch[i];
int ans=;
for(int i=;i<=n;i++)
{
char k1,k2;
int p1=i,p2=i+n-,mx1=,mx2=;
while(ch[p1]=='w'&&p1<=i+n-){
p1++;mx1++;
}
k1=ch[p1];
while(p1<=i+n-){
if(ch[p1]==k1||ch[p1]=='w')
mx1++,p1++;
else break;
}
while(ch[p2]=='w'&&p2>=i&&mx2<n-mx1){
p2--;mx2++;
}
k2=ch[p2];
while(p2>=i&&mx2<n-mx1){
if(ch[p2]==k2||ch[p2]=='w')
mx2++,p2--;
else break;
}
ans=max(ans,mx1+mx2);
}
printf("%d\n",ans);
return ;
}
水题不AC,自挂二叉树——Chemist的更多相关文章
- codeforces 677A A. Vanya and Fence(水题)
题目链接: A. Vanya and Fence time limit per test 1 second memory limit per test 256 megabytes input stan ...
- POJ 3984 - 迷宫问题 - [BFS水题]
题目链接:http://poj.org/problem?id=3984 Description 定义一个二维数组: int maze[5][5] = { 0, 1, 0, 0, 0, 0, 1, 0, ...
- codeforces 688A A. Opponents(水题)
题目链接: A. Opponents time limit per test 1 second memory limit per test 256 megabytes input standard i ...
- URAL 1136 Parliament 二叉树水题 BST后序遍历建树
二叉树水题,特别是昨天刚做完二叉树用中序后序建树,现在来做这个很快的. 跟昨天那题差不多,BST后序遍历的特型,找到最后那个数就是根,向前找,比它小的那块就是他的左儿子,比它大的那块就是右儿子,然后递 ...
- codeforces 659A A. Round House(水题)
题目链接: A. Round House time limit per test 1 second memory limit per test 256 megabytes input standard ...
- ACM :漫漫上学路 -DP -水题
CSU 1772 漫漫上学路 Time Limit: 1000MS Memory Limit: 131072KB 64bit IO Format: %lld & %llu Submit ...
- gdutcode 1195: 相信我这是水题 GDUT中有个风云人物pigofzhou,是冰点奇迹队的主代码手,
1195: 相信我这是水题 Time Limit: 1 Sec Memory Limit: 128 MBSubmit: 821 Solved: 219 Description GDUT中有个风云人 ...
- cf118A(水题)
题意就是讲给出的字符串元音字母去掉,在每个辅音字母前加点,且小写输出...注意y也要去掉(以我英语挂科的水平也知道y是辅音字母)... 水题.. 直接上代码好了... #include <ios ...
- HDU 5832 A water problem(某水题)
p.MsoNormal { margin: 0pt; margin-bottom: .0001pt; text-align: justify; font-family: Calibri; font-s ...
随机推荐
- FatMouse's Speed--hdu1160(dp+输出路径)
Problem Description FatMouse believes that the fatter a mouse is, the faster it runs. To disprove th ...
- 巧用MySQL AHI加速神器,让你的InnoDB查询飞起来!
DBAPLUS http://mp.weixin.qq.com/s/cIjQIz-ZngSYJ3k2ZBBSsg
- 生产环境之Nginx高可用方案
准备工作: 192.168.16.128 192.168.16.129 两台虚拟机.安装好Nginx 安装Nginx 更新yum源文件: rpm -ivh http://nginx.org/packa ...
- [RxJS] Implement RxJS `switchMap` by Canceling Inner Subscriptions as Values are Passed Through
switchMap is mergeMap that checks for an "inner" subscription. If the "inner" su ...
- Office EXCEL 如何为宏命令指定快捷键或者重新设置快捷键
1 工具-宏-宏,打开宏窗口 2 鼠标单击任意宏将其选中,点击宏选项,即可修改或为他增加快捷键. 3 注意,你直接在Visual Basci编辑器里面改是不行的,因为加了'的只是注释而已
- Cleave js 使用
1111111111111111 xxxxxx Cleave.js 键入时格式化< input />内容 信用卡号码格式 明确 美国运通:从34/37开始 34 签证:从4开始 ...
- 发现个delphi调用vc写的Dll中包括pchar參数报错奇怪现象
发现个delphi调用vc写的Dll中包括pchar參数奇怪现象 procedure中的第一行语句不能直接调用DLL的函数,否则会执行报错,在之前随意加上条语句就不报错了奇怪! vc的DLL源代码地址 ...
- [更新Github地址]python学习,自己写了个简单聊天工具mychat
最近在学习python,自己写了个最最简单的聊天工具mychatv0.1. 第一版,完成基本的聊天功能. GUI用的是自带的TKinter,用到的模块主要就是socket(网络编程), thread( ...
- 【内存数据库】OracleTimesten连接DSN创建用户
************************************************************************ ****原文:blog.csdn.net/clark_ ...
- HDU1251 统计难题 【trie树】
统计难题 Time Limit: 4000/2000 MS (Java/Others) Memory Limit: 131070/65535 K (Java/Others) Total Subm ...