CF 复仇者联盟场。。。

水题 A - Hulk(绿巨人)

输出love hate。。。

#include <bits/stdc++.h>

typedef long long ll;
const int N = 1e5 + 5; int main() {
int n;
scanf ("%d", &n);
printf ("I hate");
for (int i=1; i<n; ++i) {
if (i & 1) printf (" that I love");
else printf (" that I hate");
}
puts (" it");
return 0;
}

博弈+打表找规律 B - Spider Man(蜘蛛侠)

注意到每次多一个圈,之前的还是初始状态,各组是独立的,所以打个表或者分析一下就能找到规律。

#include <bits/stdc++.h>

typedef long long ll;
const int N = 1e5 + 5;
int a[N];
int sg[105]; int SG(int x) {
if (x < 2) return sg[x] = 0;
bool vis[105];
memset (vis, false, sizeof (vis));
for (int i=1; i<x; ++i) {
vis[SG (i) ^ (SG (x-i))] = true;
}
int &ret = sg[x] = 0;
while (vis[ret]) ret++;
return ret;
} void test() {
memset (sg, -1, sizeof (sg));
for (int i=1; i<=20; ++i) {
printf ("sg[%d]=%d\n", i, SG (i));
}
} int main() {
//test ();
int n;
scanf ("%d", &n);
for (int i=1; i<=n; ++i) scanf ("%d", a+i);
int ans = 0;
for (int i=1; i<=n; ++i) {
int res = a[i] & 1 ? 0 : 1;
ans ^= res;
printf ("%d\n", ans ? 1 : 2);
}
return 0;
}

构造 C - Thor(雷神)

题意:一个手机有n个应用,有三种操作:

1. 第x个应用有一个未读信息;

2. 读完当前第x个应用的所有未读信息;

3. 读完最前面t个信息(信息可能被重读);

每次操作后输出当前未读信息的条数。

思路:第3个操作“最前面t个”很关键,那么只要进行max(t) 次操作。如果要读的信息在之后时间点被读掉(第2种操作)那就不更新,那么维护下最新的“清空”的应用编号和时间即可。之前有个地方写了continue,结果答案没输出,WA了好久。

#include <bits/stdc++.h>

typedef long long ll;
const int N = 3e5 + 5; int cnt[N];
int clear_time[N];
std::pair<int, int> que[N]; int main() {
int n, q;
scanf ("%d%d", &n, &q);
int m = 0, ans = 0;
int tp, x, t, maxt = 0;
for (int i=1; i<=q; ++i) {
scanf ("%d", &tp);
if (tp == 1 || tp == 2) {
scanf ("%d", &x);
if (tp == 1) {
cnt[x]++;
ans++;
que[++m] = {x, i};
} else {
ans -= cnt[x];
cnt[x] = 0;
clear_time[x] = i;
}
} else {
scanf ("%d", &t);
if (t > maxt) {
for (int j=maxt+1; j<=t; ++j) {
int pos = que[j].first, tim = que[j].second;
if (clear_time[pos] >= tim) continue;
cnt[pos]--;
ans--;
}
maxt = t;
}
}
printf ("%d\n", ans);
}
return 0;
}

Codeforces Round #366 (Div. 2)的更多相关文章

  1. Codeforces Round #366 (Div. 2) ABC

    Codeforces Round #366 (Div. 2) A I hate that I love that I hate it水题 #I hate that I love that I hate ...

  2. Codeforces Round #366 Div.2[11110]

    这次出的题貌似有点难啊,Div.1的Standing是这样的,可以看到这位全站排名前10的W4大神也只过了AB两道题. A:http://codeforces.com/contest/705/prob ...

  3. Codeforces Round #366 (Div. 2) B

    Description Peter Parker wants to play a game with Dr. Octopus. The game is about cycles. Cycle is a ...

  4. Codeforces Round #366 (Div. 2) C 模拟queue

    C. Thor time limit per test 2 seconds memory limit per test 256 megabytes input standard input outpu ...

  5. Codeforces Round #366 (Div. 2) B 猜

    B. Spider Man time limit per test 2 seconds memory limit per test 256 megabytes input standard input ...

  6. Codeforces Round #366 (Div. 2) A

    A. Hulk time limit per test 1 second memory limit per test 256 megabytes input standard input output ...

  7. Codeforces Round #366 (Div. 2) C Thor(模拟+2种stl)

    Thor 题意: 第一行n和q,n表示某手机有n个app,q表示下面有q个操作. 操作类型1:app x增加一条未读信息. 操作类型2:一次把app x的未读信息全部读完. 操作类型3:按照操作类型1 ...

  8. Codeforces Round #366 (Div. 2)_B. Spider Man

    B. Spider Man time limit per test 2 seconds memory limit per test 256 megabytes input standard input ...

  9. Codeforces Round #366 (Div. 2)_C. Thor

    C. Thor time limit per test 2 seconds memory limit per test 256 megabytes input standard input outpu ...

随机推荐

  1. Max double slice sum 的解法

    1. 上题目: Task description A non-empty zero-indexed array A consisting of N integers is given. A tripl ...

  2. MarkdownPad2.5 注册码

    邮箱: Soar360@live.com 授权秘钥: GBPduHjWfJU1mZqcPM3BikjYKF6xKhlKIys3i1MU2eJHqWGImDHzWdD6xhMNLGVpbP2M5SN6b ...

  3. Linux下用户组、文件权限详解

    在linux中的每个用户必须属于一个组,不能独立于组外.在linux中每个文件有所有者.所在组.其它组的概念 - 所有者 - 所在组 - 其它组 - 改变用户所在的组 所有者 一般为文件的创建者,谁创 ...

  4. bzoj4237 稻草人

    我是萌萌的传送门 题意不难理解吧-- 一开始看到这道题的时候lrd告诉我这题要分治,还给我讲了讲分治要怎么写,好像是CDQ+树状数组来着--(好吧我已经忘了--)然而我第一眼看完题之后的思路是数据结构 ...

  5. Gson解析纯Json数组

    [ { "type": "123", "value": 123 }, { "type": "234" ...

  6. jQuery根据name取input值问题

    最近做项目用$("input[name=inputName]").val();去取input值得时候发现取值有问题:总是取第一次输入的值,如果在同一个页面不发生表单提交,然后将in ...

  7. 将页面转化为pdf的实现方法

    1.实现代码把html转化为pdf主要是使用wkhtmltopdf.exe工具生成,在获取转化的地址,创建一个进程,把地址传递到进程参数中进行调用wkhtmltopdf.exe工具打印 2.代码片段/ ...

  8. ios 获取文件扩展名备忘

    NSString *lastComponent = [cachePath lastPathComponent];              NSString *pathLessFilename = [ ...

  9. [Android Pro] 完美Android Cursor使用例子(Android数据库操作)

    reference to : http://www.ablanxue.com/prone_10575_1.html 完美 Android Cursor使用例子(Android数据库操作),Androi ...

  10. css flex布局

    关于flex布局的一些简单用法 效果(下图) 实现代码: <!--html--> <div class="wrap"> <div class=&quo ...