A(模拟):

#include <bits/stdc++.h>
using namespace std;
const int inf = 0x3f3f3f3f;
const double eps = 1e-6;
const int N = 2e5+7;
typedef long long ll;
const ll mod = 1e9+7;
using namespace std;
int a[N];
ll suf[N];
int main(){
ios::sync_with_stdio(false);
cin.tie(0); cout.tie(0);
int n;
while(cin>>n){
for(int i=0;i<=n;i++){
cin>>a[i];
}
for(int i=n;i>=0;i--)
suf[i]=suf[i+1]+a[i];
int ans;
for(int i=0;i<=n;i++){
if(suf[i]>=i){
ans=i;
}
}
cout<<ans<<endl;
}
}

B(思维):

#include <bits/stdc++.h>
using namespace std;
const int inf = 0x3f3f3f3f;
const double eps = 1e-6;
const int N = 2e5+7;
typedef long long ll;
const ll mod = 1e9+7;
using namespace std;
int main(){
ios::sync_with_stdio(false);
cin.tie(0); cout.tie(0);
ll n;
while(cin>>n){
ll a; cin>>a;
cout<<min(n,n%2==0?(n/2+a/2):(n/2+(a+1)/2))<<endl;
}
}

C(可持久化线段树):

#include <bits/stdc++.h>
using namespace std;
const int inf = 0x3f3f3f3f;
const double eps = 1e-6;
const int N = 1e5+7;
typedef long long ll;
const ll mod = 1e9+7;
using namespace std;
struct tree{
int l,r,v,ls,rs;
}t[N<<5];
ll a[N];
int rt[N];
int nico=0;
int cnt=0;
void build(int &p,int l,int r){
p=++nico;
t[p].l=l; t[p].r=r; t[p].v=0;
if(l==r){
return ;
}
int mid=(l+r)>>1;
build(t[p].ls,l,mid);
build(t[p].rs,mid+1,r);
t[p].v=t[t[p].ls].v+t[t[p].rs].v;
}
void update(int &p,int last,int x,int v){
p=++cnt;
t[p]=t[last];
if(t[p].l==t[p].r&&t[p].l==x){
t[p].v+=v;
return ;
}
int mid=(t[p].l+t[p].r)>>1;
if(x<=mid) update(t[p].ls,t[last].ls,x,v);
else update(t[p].rs,t[last].rs,x,v);
t[p].v=t[t[p].ls].v+t[t[p].rs].v;
}
int query(int p,int last,int val){
if(t[p].l==t[p].r){
return t[p].l;
}
int mid=(t[p].l+t[p].r)>>1;
int tt=t[t[p].rs].v-t[t[last].rs].v;
if(tt+val<=mid) return query(t[p].ls,t[last].ls,tt+val);
else return query(t[p].rs,t[last].rs,val);
}
int main(){
ios::sync_with_stdio(false);
cin.tie(0); cout.tie(0);
int n,q;
while(cin>>n>>q){
build(rt[0],1,n+1);
cnt=nico;
for(int i=1;i<=n;i++){
cin>>a[i];
update(rt[i],rt[i-1],a[i],1);
}
for(int i=1;i<=q;i++){
int l,r; cin>>l>>r;
int ans=query(rt[r],rt[l-1],0);
cout<<ans<<"\n";
}
}
}

F(排序):

#include <bits/stdc++.h>
using namespace std;
const int inf = 0x3f3f3f3f;
const double eps = 1e-6;
const int N = 1e3+7;
typedef long long ll;
const ll mod = 1e9+7;
using namespace std;
struct node{
ll a,b,c;
int id;
friend bool operator < (node i,node j){
if((__int128)(i.a+i.b)*(j.a+j.b+j.c)==(__int128)(j.a+j.b)*(i.a+i.b+i.c)) return i.id<j.id;
return (__int128)(i.a+i.b)*(j.a+j.b+j.c)<(__int128)(j.a+j.b)*(i.a+i.b+i.c);
}
}t[N];
int main(){
ios::sync_with_stdio(false);
cin.tie(0); cout.tie(0);
int n;
while(cin>>n){
for(int i=0;i<n;i++){
cin>>t[i].a>>t[i].b>>t[i].c;
t[i].id=i+1;
}
sort(t,t+n);
for(int i=0;i<n;i++){
if(i==0) cout<<t[i].id;
else cout<<" "<<t[i].id;
}
cout<<endl;
}
}

G(思维题):

#include <bits/stdc++.h>
using namespace std;
const int inf = 0x3f3f3f3f;
const double eps = 1e-6;
const int N = 1e3+7;
typedef long long ll;
const ll mod = 1e9+7;
using namespace std;
vector<pair<int,int> > ss,tt;
int main(){
ios::sync_with_stdio(false);
cin.tie(0); cout.tie(0);
string s,t;
while(cin>>s>>t){
ss.clear(); tt.clear();
int lens=s.size();
int lent=t.size();
int cnt=0;
for(int i=0;i<lens;i++){
if(s[i]=='c') cnt++;
}
for(int i=0;i<lent;i++)
if(t[i]=='c') cnt--;
if(cnt!=0){
cout<<"No"<<endl;
continue;
}
int numa=0,numb=0;
for(int i=0;i<=lens;i++){
if(i==lens||s[i]=='c'){
ss.push_back(make_pair(numa&1,numb&1));
numa=0;
numb=0;
}else{
if(s[i]=='a') numa++;
else numb++;
}
}
numa=0; numb=0;
for(int i=0;i<=lent;i++){
if(i==lent||t[i]=='c'){
tt.push_back(make_pair(numa&1,numb&1));
numa=0;
numb=0;
}else{
if(t[i]=='a') numa++;
else numb++;
}
}
bool f=1;
for(int i=0;i<ss.size();i++){
if(ss[i].first==tt[i].first&&ss[i].second==tt[i].second){ }else{
f=0;
}
}
if(!f){
cout<<"No"<<endl;
}else{
cout<<"Yes"<<endl;
}
}
}

K(数学题):

#include <bits/stdc++.h>
using namespace std;
const int inf = 0x3f3f3f3f;
const double eps = 1e-6;
const int N = 2e5+7;
typedef long long ll;
typedef __int128 ull;
const ll mod = 1e9+7;
using namespace std;
ull work(ll a,ll b,ll num){
return b/num-(a-1)/num;
}
void print(__int128 x)
{
if (!x) return ;
if (x < 0) putchar('-'),x = -x;
print(x / 10);
putchar(x % 10 + '0');
}
int main(){
// ios::sync_with_stdio(false);
// cin.tie(0); cout.tie(0);
ll a,b,c,d;
while(~scanf("%lld%lld%lld%lld",&a,&b,&c,&d)){
ull x=b-a+1,y=d-c+1;
ull num18=work(a,b,2018);
ull num19=work(a,b,1009);
ull num12=work(a,b,2);
ull num28=work(c,d,2018);
ull num29=work(c,d,1009);
ull num22=work(c,d,2);
print(num18*(y-num28)+num28*(x-num18)+num18*num28+(num12-num18)*(num29-num28)+(num22-num28)*(num19-num18));
puts("");
}
}

2019牛客国庆集训派对day2的更多相关文章

  1. 图论+思维(2019牛客国庆集训派对day2)

    题意:https://ac.nowcoder.com/acm/contest/1107/J n个点的完全图编号0-n-1,第i个点的权值为2^i,原先是先手选取一些边,然后后手选取一些点,满足先手选取 ...

  2. 2019牛客国庆集训派对day5

    2019牛客国庆集训派对day5 I.Strange Prime 题意 \(P=1e10+19\),求\(\sum x[i] mod P = 0\)的方案数,其中\(0 \leq x[i] < ...

  3. 牛客国庆集训派对Day2 Solution

    A    矩阵乘法 思路: 1° 牛客机器太快了,暴力能过. #include <bits/stdc++.h> using namespace std; #define N 5000 in ...

  4. 2019 牛客国庆集训派对day1-C Distinct Substrings(exkmp+概率)

    链接:https://ac.nowcoder.com/acm/contest/1099/C来源:牛客网 时间限制:C/C++ 1秒,其他语言2秒 空间限制:C/C++ 32768K,其他语言65536 ...

  5. 计算几何板子题【2019牛客国庆集训派对day7——三角形和矩形】【多边形相交的面积】

    链接:https://ac.nowcoder.com/acm/contest/1112/J来源:牛客网 题目描述 Bobo 有一个三角形和一个矩形,他想求他们交的面积. 具体地,三角形和矩形由 8 个 ...

  6. 2019牛客国庆集训派对day7 A 2016

    链接:https://ac.nowcoder.com/acm/problem/52800来源:牛客网 时间限制:C/C++ 1秒,其他语言2秒 空间限制:C/C++ 32768K,其他语言65536K ...

  7. 2019牛客国庆集训派对day1(A, B E F K)

    链接:https://ac.nowcoder.com/acm/contest/1099#question A:可知符合条件的图中间肯定存在一个由1构成的矩形,找到由1构成矩形的边界,判断出现的1的数量 ...

  8. 牛客国庆集训派对Day2

    题目链接:https://www.nowcoder.com/acm/contest/202/A A 题意:给出最大4096*64和64*4096的矩阵,其中有一个矩阵只含有0和1,问你它们相乘所得到得 ...

  9. 牛客国庆集训派对Day2 H 期望

    小贝喜欢玩卡牌游戏.某个游戏体系中共有N种卡牌,其中M种是稀有的.小贝每次和电脑对决获胜之后都会有一个抽卡机会,这时系统会随机从N种卡中选择一张给小贝.普通卡可能多次出现,而稀有卡牌不会被重复抽到.小 ...

随机推荐

  1. 项目实战--解决运行sql文件错误

    说明: 新项目启动,通过公司运维同学给的数据库脚本在Navicat中建项目的数据库,运行脚本时报错 Error Code: 1227. Access denied; you need (at leas ...

  2. HP Proliant DL580 gen9 阵列卡P440AR 高速缓存 被禁用

    摘录内容: IMPORTANT: This issue does NOT occur when the operating system shuts down gracefully. In addit ...

  3. 如何利用Intellij Idea搭建python编译运行环境 (转)

    首先进入Intellij Idea的官方网站:点击打开链接 点击download,选择旗舰版进行下载.网上的破解教程很多,也可以注册一个学生账号拿到一年的免费试用权. 安装过程不再细说,第一次打开选择 ...

  4. 超过varchar定义长度

    mysql> select version();+------------+| version() |+------------+| 5.1.73-log |+------------+1 ro ...

  5. 如何查看U盘的VID和PID

    1.将USB插入电脑 2.右键单击[此电脑],选择[管理] 3.在弹出的对话框中选择[设备管理器],选择[USB大容量存储设备] 4.右键单击[USB大容量存储设备],选择[属性],在弹出的对话框中选 ...

  6. Oracle Rac to Rac One Node

    =~=~=~=~=~=~=~=~=~=~=~= PuTTY log 2020.01.14 20:05:12 =~=~=~=~=~=~=~=~=~=~=~= [oracle@rac01 ~]$ srvc ...

  7. Git 沙盒模拟实战(远程篇)

    Git 沙盒模拟实战(远程篇) >---基础篇 远程仓库 远程仓库并不复杂, 在如今的云计算盛行的世界很容易把远程仓库想象成一个富有魔力的东西, 但实际上它们只是你的仓库在另个一台计算机上的拷贝 ...

  8. JS复习笔记一:冒泡排序和二叉树列

    在这里逐步整理一些JS开发的知识,分享给大家: 一:冒泡排序 使用场景:数组中根据某个值得大小来对这个数组进行整体排序 难度:简单 原理:先进行循环,循环获取第一至倒数第二的范围内所有值,对当前值与下 ...

  9. java虚拟机入门(三)- 你了解对象吗

    对象对于java程序员来说,那是想要多少就有多少,所以那些嘲笑程序员的单身狗,哼,只有无知使你们快乐,想我大java开发,何曾缺少过对象.我们不仅仅知道创建对象,还知道创建对象的过程是啥样的,不信?往 ...

  10. kettle 连接oracle12c问题解决办法:

    在oracle的安装文件目录......\NETWORK\ADMIN\sqlnet.ora 文件中添加该语句:SQLNET.ALLOWED_LOGON_VERSION_SERVER = 8window ...