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. thinkphp nginx+phpcgj安装配置

    环境:mysql-5.6.26             nginx-1.9.4.tar.gz   php-5.6.13 程序框架ThinkPHP 客户要求必须使用nginx + php 1.首先安装n ...

  2. PHP Web 木马扫描器代码

    scanner.php:<?php/**************PHP Web木马扫描器************************//* [+] 作者: alibaba *//* [+] ...

  3. 编写高性能的 Lua 代码

    前言 Lua是一门以其性能著称的脚本语言,被广泛应用在很多方面,尤其是游戏.像<魔兽世界>的插件,手机游戏<大掌门><神曲><迷失之地>等都是用Lua来 ...

  4. 【转】Go Channels

    转自: http://kdf5000.com/2017/07/16/Go-Channels/ Golang使用Groutine和channels实现了CSP(Communicating Sequent ...

  5. PHP面向对象 实例化 构造函数 封装 继承 静态

    PHP面向对象 实例化 构造函数 封装 继承 静态 面向对象: 一:定义类 class Dog { var $name; var $age; var $pinzhong; function Jiao( ...

  6. 【go】go语言socket通信样例

    server.go package main import ( "net" "fmt" "io" ) func main() { liste ...

  7. 【Android M】预制的 Google GMS包

    目录:android/vendor/google/apps .├── AndroidPay│   ├── Android.mk│   ├── AndroidPay_arm64.apk│   ├── A ...

  8. request.get... getHeader 能取得的信息 参数

    转载▼   StringTokenizer st = new StringTokenizer(agent,";"); st.nextToken(); //得到用户的浏览器名 Str ...

  9. 心脏滴血HeartBleed漏洞研究及其POC

    一.漏洞原理: 首先声明,我虽然能看懂C和C++的每一行代码,但是他们连在一起我就不知道什么鬼东西了.所以关于代码说理的部分只能参考其他大牛的博客了. /* 据说源码中有下面两条语句,反正我也没看过源 ...

  10. 关于移动端rem 布局的一些总结

    1.rem是什么? rem(font size of the root element)是指相对于根元素的字体大小的单位 2.为什么web app要使用rem? 实现强大的屏幕适配布局(淘宝,腾讯,网 ...