The fifth day of Changle trainning.
今天难得不爆零垫底,感谢出题者的放水我的努力。
ps.花草落地生根,它有选择么?
这雨生于天,死于地,中间的过程就是人生。
梦里与现实的距离,仅仅是双眸的一合一闭。
努力吧!就算再寂寞!也要努力活下去!
青年人珍重的描写罢,时间正翻着书页,请你着笔!
如果本来就知道是结果失败的,那为何还要尝试呢?
亮,再不能临阵讨贼矣。悠悠苍天,何薄于我!
有形的东西迟早会凋零,但只有回忆是永远不会凋零的。
世事变迁,沧海桑田,它在万维网的角落,等着哥伦布和他的船员。
愿你走过一场青春,还留有三分纯真。
任尘世繁华,唯有守护你的一切,才是我此生唯一的使命。
希望只在一瞬之间,而黑暗,永恒。
勇者愤怒,抽刃向更强者;怯者愤怒,却抽刃向更弱者。
希望的钥匙,就在奇迹之间。
第一题,字母还原
枚举判断可得正确答案
代码如下
#include
using namespace std;
int n, tot;
void Do(string a, string b, string c) {
reverse(a.begin(), a.end());
for (int i = 0; i < n; i++) {
int aa = (int)(a[i] - 'a') + 1, bb = (int)(b[i] - 'a') + 1, cc = (int)(c[i] - 'a') + 1;
int ab = aa - bb, ac = cc - aa;
if (ab < 0) {
ab += 26;
}
if (ac < 0) {
ac += 26;
}
if (ab != ac) {
return;
}
}
cout <> n;
cin >> a;
cin >> b;
cin >> c;
Do(a, b, c);
Do(b, a, c);
Do(c, a, b);
return 0;
}
第二题
有一个n*m的棋盘,在初始时刻,棋盘上的每个位置都放有一个白色的棋子。
接下来有 次操作,每次会将某一行或者某一列的棋子染成白色或者黑色。新的染色会覆盖旧的。
在所有操作做完后询问这个棋盘上最终有多少个黑色棋子。
比赛时我直接暴力,30pts
题解上是说从后往前来循环标记数组,来减少时间复杂度。
代码如下:
#include
using namespace std;
int n,m,Q,line[1010101],row[1010101],x[1010100],y[1010100],z[1010100],ll,rr;
long long ans;
int main(){
// freopen("board.in","r",stdin);
// freopen("board.out","w",stdout);
cin>>n>>m>>Q;
for(int i=1;i>x[i]>>y[i]>>z[i];
}
for(int i=Q;i>=1;i--)
{
if(x[i]==1)
{
if(row[y[i]]==1)
{
continue;
}
row[y[i]]=1;
if(z[i]==1)
ans+=n-ll;
rr++;
}
else if(x[i]==0)
{
if(line[y[i]]==1)
{
continue;
}
line[y[i]]=1;
if(z[i]==1)
ans+=m-rr;
ll++;
}
}
cout<<ans;
return 0;
}
第三题
小 G 送给小 C 一个字符串作为礼物,这个字符串只由 a 和 b 组成。
由于小 G 患有严重的强迫症,他觉得这个字符串并不优美,他决定对它做一些操作:
每次操作从字符串中选择一个 ab 子串,并将其替换为 bba。
如果一个字符串的所有 b 都在所有 a 前面,他认为这个字符串是优美的。
现在小 G 想知道,最少需要多少次操作,能使这个字符串是优美的,或者这个字符串不可能变成优美的。
由题意得,我们只需要从后往前来统计b的个数,遇到a时便*2即可。
由于本人语言表达能力极弱,直接上代码
#include
using namespace std;
string a,b;
int cnt,ans;
int main(){
// freopen("board.in","r",stdin);
// freopen("board.out","w",stdout);
cin>>a;
int len=a.size();
for(int i=len-1;i>=0;i--)
{
if(a[i]=='b')
{
cnt=(cnt+1)%1000000007;
}
else
{
ans=(ans+cnt)%1000000007;
cnt=(cnt*2)%1000000007;
}
}
cout<<ans%1000000007;
return 0;
}
ps.无知不可怕,可怕的是不知道自己需要知道什么。
过去的事情可以不忘记,但一定要放下。
曾经发生过的事情不可能忘记,只不过是想不起而已。
停留是刹那,转身即天涯。
我本可以忍受黑暗,如果我不曾见过光明。
世界上大部分事,都没有太大意义,真理与热爱除外。
要让一群人团结起来,需要的不是英明的领导,而是共同的敌人。
那天,我听到了种子破土的声音,又细微又坚定。
为了理想的实现,航行的孤独在所难免。
勇气并非来自体力,而是来自不屈不挠的意志。
纵使黑云蔽日,我也要燃烧天空,带你找到回家的路。
莫道儒冠误此生,从来诗书不负人。
伤痛,乃成长的捷径。
梦醒人终散,缘尽情已空。
好景不长云遮月。
方寸之间,深不见底啊
孤独的人不会伤害别人,只会不断地伤害自己罢了。
我之所以想变强,是为了活得轻松写意。
若你困于无风之地,我将奏响高天之歌。
万物皆有裂痕,那是光照进来的地方。
人总有一天都会死的,但正因为生命是有限的,才能够欢喜和悲伤。
燕雀安知鸿鹄之志哉?
落尽红缨君不见,轻绘梨花泪沾衣。
永远不要活在过去的回忆里;昨天的太阳,晒不干今天的衣裳!
非英杰不图?吾即谋之且射毕。
温柔正确的人总是难以生存,因为这世界既不温柔,也不正确。
萧萧玉笛兮孩儿啼,绵绵征军兮终不返。
月光还是少年的月光,九州一色还是李白的霜。
傲骨几锉尽 惟立仇心 十方雷霆乍起 振紫衣
生死去留,棚头傀儡。一线断时,落落磊磊。
愿人生如剑、立起寒光四射、躺倒四射寒光
绝望自有绝望的力量,正如希望自有希望的无能.
梦,随时生,随实灭。
人都有两面,一面天使,一面恶魔。
晨意微寒秋渐深,侧伴无事俏佳人。
我向着黑暗前行,不是被黑暗吞噬,而是想亲手结束这该死的黑暗。
人亡则死,心亡则忘。
木叶飞舞之处,火亦生生不息。
以雷霆击碎黑暗。
在绝望中超越自我。