#366 A-C
A. Hulk
题意是给你一个n 输出一个英文字符串,找下规律就发现
当(i!=n&&i%2==1) 输出的是 I hate that (注意大写)
当(i!=n&&i%2==0) 输出的是 I love that (注意大写)
当(i==n&&i%2==1) 输出的是 I love it (注意大写)
当(i==n&&i%2==0) 输出的是 I love it (注意大写)
注意有空格;
#include<bits/stdc++.h>
#define int long long
#define MAX(a,b,c) max(a,max(b,c))
#define MIN(a,b,c) min(a,min(b,c))
#define pb push_back
#define fi first
#define se second
typedef long long ll;
typedef long long LL;
typedef unsigned long long ull;
typedef unsigned long long uLL;
using namespace std;
const int maxn=1e5+;
const int INF=0x3f3f3f3f;
int32_t main()
{
int n; cin>>n;
for(int i=;i<n;i++)
{
if(i%==) cout<<"I hate that"<<" ";
else cout<<"I love that"<<" ";
}
if(n%==) cout<<"I hate it"<<endl;
else cout<<"I love it"<<endl;
}
A.cpp
B. Spider Man
题意有点难,每次给你以一个数n 让你去操作 输出结果;
每次操作是找一个圈 长度为x>=2 分成1-p p-两段
每个n 要去到 n-1 个点
n为偶数时 首次可以去掉 0 2 个点 第一个操作者可以操作最后一下,第一个操作者win
当n为奇数时候 首次每次只能去掉1个点 就变成了奇数+偶数 第一个操作者 lost
#include<bits/stdc++.h>
#define int long long
#define MAX(a,b,c) max(a,max(b,c))
#define MIN(a,b,c) min(a,min(b,c))
#define pb push_back
#define fi first
#define se second
typedef long long ll;
typedef long long LL;
typedef unsigned long long ull;
typedef unsigned long long uLL;
using namespace std;
const int maxn=1e5+;
const int INF=0x3f3f3f3f;
int32_t main()
{
int n; cin>>n; int t=;
for(int i=;i<=n;i++)
{
int x; cin>>x;
if(x%==) cout<<t<<endl;
else
{
if(t==) t=;
else t=;
cout<<t<<endl;
}
}
}
B.cpp
C. Thor
题目意思就是n个程序发送手机通知 ,你去查看通知,问你每次剩下多少通知没看
有3种类型
type 1 应用 b 发送一个通知;
type 2 阅读 b 的所有通知;
type 3 阅读前t个通知(可以重复阅读)
直接暴力肯定过不了 n*p 复杂度过不去
我们注意 单独的type2 type3 都可以用o(n)的复杂度过去
我们就要把这两个联系在一起
执行type2操作时 我们要去重(type3操过的 (一前type2操作))
单独的type2时 每次type2时 总数减去 新加的amout[b] ;
新加的mount[b] 中可能有type3操作过的; 我们要在type中减去;
执行type3操作时候 遍历上一次 t1到这次的;
中间有type2读过的 所以要type2要标记位置,使type3遍历时候跳过这个数
#include<bits/stdc++.h>
#define int long long
#define MAX(a,b,c) max(a,max(b,c))
#define MIN(a,b,c) min(a,min(b,c))
#define pb push_back
#define fi first
#define se second
typedef long long ll;
typedef long long LL;
typedef unsigned long long ull;
typedef unsigned long long uLL;
using namespace std;
const int maxn=3e5+;
const int INF=0x3f3f3f3f;
vector<int> vs[maxn];
pair<int,int> pa[maxn];
int amout[maxn];
int pos[maxn];
int32_t main()
{
int n,q; cin>>n>>q;
int cnt=,sum=;
int p=;
for(int i=;i<q;i++)
{
int a,b; cin>>a>>b;
if(a==)
{
vs[b].pb(cnt);
amout[b]++;
sum++;
pa[cnt].first=;
pa[cnt].second=b;
cnt++;
}
if(a==)
{
sum=sum-amout[b];
amout[b]=;
for(int j=pos[b];j<vs[b].size();j++)
{
pa[vs[b][j]].first=;
}
pos[b]=vs[b].size();
}
if(a==)
{
for(int j=p;j<b;j++)
{
if(!pa[j].first)
{
pa[j].first=;
sum--;
amout[pa[j].second]--;
}
}
p=max(p,b);
}
cout<<sum<<endl;
} }
C.cpp
#366 A-C的更多相关文章
- 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 ...
- <Tree> 298 250 366 199(高频) 98(高频)
298. Binary Tree Longest Consecutive Sequence 先序遍历,根左右.如果该节点的 value == 父节点value + 1, 则长度+1; 否则重置为1. ...
- Codeforces Round #366 (Div. 2)
CF 复仇者联盟场... 水题 A - Hulk(绿巨人) 输出love hate... #include <bits/stdc++.h> typedef long long ll; co ...
- 366. Find Leaves of Binary Tree
Given a binary tree, collect a tree's nodes as if you were doing this: Collect and remove all leaves ...
- LintCode 366 Fibonacci
/* 1st method will lead to time limit *//* the time complexity is exponential sicne T(n) = T(n-1) + ...
- Codeforces Round #366 Div.2[11110]
这次出的题貌似有点难啊,Div.1的Standing是这样的,可以看到这位全站排名前10的W4大神也只过了AB两道题. A:http://codeforces.com/contest/705/prob ...
- 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 ...
- 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 ...
- Codeforces Round #366 (Div. 2) B 猜
B. Spider Man time limit per test 2 seconds memory limit per test 256 megabytes input standard input ...
- Codeforces Round #366 (Div. 2) A
A. Hulk time limit per test 1 second memory limit per test 256 megabytes input standard input output ...
随机推荐
- 关于Object.prototype.toString.call
slice(8,-1)意思是从第8位开始(包含第8位)到最后一位之前(-1的意思就是最后一位,不包含最后一位): Object.prototype.toString.call(boj)这个是用来判断数 ...
- 1-2Controller之Session
laravel5.5版本. 视频教程是慕课网中的:轻松学会Laravel-表单篇 1-2 /*session简介: 1.由于HTTP协议是无状态(Stateless)的,所以session提供一种保存 ...
- UVa 10891 - Game of Sum 动态规划,博弈 难度: 0
题目 https://uva.onlinejudge.org/index.php?option=com_onlinejudge&Itemid=8&page=show_problem&a ...
- 稀疏 部分 Checkout
To easily select only the items you want for the checkout and force the resulting working copy to ke ...
- :工厂模式2:抽象工厂模式--Pizza
#ifndef __INGREDIENT_H__ #define __INGREDIENT_H__ #include <iostream> using namespace std; cla ...
- js 变量的声明能提升 初始化不会提升
var x = 5; // 初始化 x elem = document.getElementById("demo"); // 查找元素 elem.innerHTML = x + & ...
- JDK的下载及配置
下载地址,为了兼容最好安装1.8版本 jdk1.8:http://jbox.jd.com/quickshare/d2wheyazjtdccshou2dbo24roejdk1.7:http://jbox ...
- ALTER语句重命名,重新定义和重新排序列
该CHANGE,MODIFY和 ALTER子句可以改变现有列的名称和定义.他们有这些比较特征: CHANGE: 可以重命名列并更改其定义,或两者都可以. 具有更多的能力MODIFY,但是以某些操作的便 ...
- python中的pandas的两种基本使用
python中的pandas的两种基本使用2018年05月19日 16:03:36 木子柒努力成长 阅读数:480 一.pandas简介 pandas:panel data analysis(面板数据 ...
- vue 路由跳转,路由传参的几种方式
1. router-link <router-link :to="{ path: 'yourPath', params: { name: 'name', dataObj: data } ...