A:

Solved.

签。

 #include <bits/stdc++.h>
using namespace std; #define ll long long
#define N 200010
char s[N]; int main()
{
while (scanf("%s", s + ) != EOF)
{
ll res = ;
int len = strlen(s + ); int last = len;
for (int i = len; i >= ; --i)
{
if (s[i] == 'B')
{
res += last - i;
--last;
}
}
printf("%lld\n", res);
}
return ;
}

B:

Solved.

签。

 #include <bits/stdc++.h>
using namespace std; #define N 200010
int n, a[N], Bit[];
unordered_map <int, int> mp; int main()
{
Bit[] = ;
for (int i = ; i <= ; ++i) Bit[i] = Bit[i - ] << ;
while (scanf("%d", &n) != EOF)
{
mp.clear();
for (int i = ; i <= n; ++i)
{
scanf("%d", a + i);
++mp[a[i]];
}
sort(a + , a + + n);
int res = ;
for (int i = n; i >= ; --i)
{
int pos = upper_bound(Bit, Bit + , a[i]) - Bit;
//cout << a[i] << " " << Bit[pos] << endl;
if (pos >= || mp[a[i]] == ) continue;
int tar = Bit[pos] - a[i];
if ((tar != a[i] && mp[tar]) || (tar == a[i] && mp[tar] > ))
{
++res;
--mp[tar];
}
--mp[a[i]];
}
printf("%d\n", res);
}
return ;
}

C:

Unsolved.

题意:
一共有n个字符串,给出每个字符串的长度,要求构造这些字符串,使得$S_1 < S_2 < \cdots < S_n$

这里的小于重载为字典序

D:

Solved.

题意:

在一个棋盘上,A只能向下走,B只能向走

刚开始一个棋子位于(1, 1)位置,有些地方有障碍物,如果有障碍物或到边界就不能走
A想要总步数最多,B想要总步数最少,双方都采用最优策略,问A最后最多能走多少步

思路:

因为A只能向下走,而且只要下面没有障碍物,他一定会向下走

那我们维护B最远能走到那里,然后一层一层往下看,如果最远能走的地方大于等于当前层某个障碍物的横坐标

那么就可以在这层让A停下来

 #include <bits/stdc++.h>
using namespace std; #define N 200010
int h, w, n;
vector <int> v[N]; int main()
{
while (scanf("%d%d", &h, &w) != EOF)
{
scanf("%d", &n);
int res = h;
for (int i = ; i <= h; ++i) v[i].clear();
for (int i = , x, y; i <= n; ++i)
{
scanf("%d%d", &x, &y);
v[x].push_back(y);
}
int far = ;
for (int i = ; i <= h; ++i)
{
if (v[i].empty())
{
++far;
continue;
}
sort(v[i].begin(), v[i].end());
if (v[i][] <= far)
{
res = i - ;
break;
}
bool flag = true;
for (auto it : v[i]) if (it == far + )
flag = false;
far += flag;
}
printf("%d\n", res);
}
return ;
}

E:

Unsolved.

题意:

在一棵树上,有一个人迷路了,在某个地方,他要回到编号为1的结点

他采用的策略是每次都选择相邻的编号最小的点去走,走不通就回溯,求最后走到结点1的步数为多少

注意输出n - 1个数,分别为当前处于第$i点,要回到1的步数$

F:

Unsolved.

AtCoder Grand Contest 029 Solution的更多相关文章

  1. AtCoder Grand Contest 029 翻车记

    A:对于每个B,会和其右边的每个W交换一次. #include<iostream> #include<cstdio> #include<cmath> #includ ...

  2. AtCoder Grand Contest 030 Solution

    A - Poisonous Cookies 签到. #include <bits/stdc++.h> using namespace std; #define ll long long l ...

  3. AtCoder Grand Contest 031 简要题解

    AtCoder Grand Contest 031 Atcoder A - Colorful Subsequence description 求\(s\)中本质不同子序列的个数模\(10^9+7\). ...

  4. AtCoder Grand Contest 012

    AtCoder Grand Contest 012 A - AtCoder Group Contest 翻译 有\(3n\)个人,每一个人有一个强大值(看我的假翻译),每三个人可以分成一组,一组的强大 ...

  5. AtCoder Grand Contest 011

    AtCoder Grand Contest 011 upd:这篇咕了好久,前面几题是三周以前写的... AtCoder Grand Contest 011 A - Airport Bus 翻译 有\( ...

  6. AtCoder Grand Contest 010

    AtCoder Grand Contest 010 A - Addition 翻译 黑板上写了\(n\)个正整数,每次会擦去两个奇偶性相同的数,然后把他们的和写会到黑板上,问最终能否只剩下一个数. 题 ...

  7. AtCoder Grand Contest 009

    AtCoder Grand Contest 009 A - Multiple Array 翻译 见洛谷 题解 从后往前考虑. #include<iostream> #include< ...

  8. AtCoder Grand Contest 008

    AtCoder Grand Contest 008 A - Simple Calculator 翻译 有一个计算器,上面有一个显示按钮和两个其他的按钮.初始时,计算器上显示的数字是\(x\),现在想把 ...

  9. AtCoder Grand Contest 007

    AtCoder Grand Contest 007 A - Shik and Stone 翻译 见洛谷 题解 傻逼玩意 #include<cstdio> int n,m,tot;char ...

随机推荐

  1. PHP - PhpStorm 快捷键大全 PhpStorm 常用快捷键和配置(转)

    原文地址:http://www.cr173.com/html/66775_1.html PhpStorm 是 JetBrains 公司开发的一款商业的 PHP 集成开发工具,PhpStorm可随时帮助 ...

  2. SVN-001

    1.cd到指定目录: 2.执行:svn cleanup:

  3. vsftp服务启动失败

    Linux下的服务如果启动失败,一般是看报错和日志进行排查的 报错看不出什么,那么就看下日志记录了什么/var/log/vsftpd.log: 一般是配置文件有问题 /etc/vsftpd/vsftp ...

  4. 今天是学习C#面向过程的最后的一天

    今天学习完啦面向过程,可能写法也就是那些,固定不变的,但是程序的写法就是由自己决定······ 今天学习了调用已经存在的方法,就是在.net  Framework 中存在的方法,具体今天提到的有这些, ...

  5. cocos2d-x游戏引擎核心之十二——3.x新特性

    v3.0 亮点 使用 C++(C++11) 的特性取代了 Objective-C 的特性 优化了 Labels 优化了渲染器(比 v2.2 更快) 新的事件分发机制 物理引擎集成 新的 UI 对象 J ...

  6. Spring AOP教程及实例

    1.教程转载==>>:http://blog.csdn.net/wangpeng047/article/details/8556800 2.实例转载==>>:http://bl ...

  7. PHP MySQL Insert Into

    INSERT INTO 语句用于向数据库表中插入新记录. 向数据库表插入数据 INSERT INTO 语句用于向数据库表添加新记录. 语法 INSERT INTO table_name VALUES ...

  8. 【BZOJ3280】小R的烦恼 最小费用最大流

    [BZOJ3280]小R的烦恼 Description 小R最近遇上了大麻烦,他的程序设计挂科了.于是他只好找程设老师求情.善良的程设老师答应不挂他,但是要求小R帮助他一起解决一个难题. 问题是这样的 ...

  9. Iterator迭代器的相关问题

    1.使用stl中的  advance和 distance 方法来进行iterator的加减  以前在遍历vector的时候,经常使用iterator之间的加减来获得元素在容器里面的index.  今天 ...

  10. ruby rvm groke

    https://ruby-china.org/wiki/rvm-guide http://www.cnblogs.com/peak-c/p/7338291.html https://doc.yonyo ...