Summer training #11
A:水
#include <bits/stdc++.h>
#include <cstring>
#include <iostream>
#include <algorithm>
#define EPS 1.0e-8
#define PI acos(-1.0)
#define INF 3000000000
#define MOD 1000000009
#define mem(a,b) memset((a),b,sizeof(a))
#define TS printf("!!!\n")
#define pb push_back
//using ll = long long;
//using ull= unsigned long long;
//std::ios::sync_with_stdio(false);
using namespace std;
//priority_queue<int,vector<int>,greater<int>> que; //min
typedef long long ll;
typedef unsigned long long ull;
bool cmplow(int a,int b)
{
return a<b;
}
int num[];
int main()
{
freopen("bulls.in", "r", stdin);
freopen("bulls.out", "w", stdout);
mem(num,);
string a,b;
cin >> a >> b;
int n=,m=;
for(int i=;i<;i++)
{
num[a[i]-'']++;
}
for(int i=;i<;i++)
{
if(a[i]==b[i])
{
n++;
}
else
{
if(num[b[i]-'']!=)
m++;
}
}
cout<< n <<" "<< m;
}
B:要先搜 再记录路径 因为可走不代表是可行解 要后面门全部走完才能记录
include <bits/stdc++.h>
#include <cstring>
#include <iostream>
#include <algorithm>
#define EPS 1.0e-8
#define PI acos(-1.0)
#define INF 3000000000
#define MOD 1000000009
#define mem(a,b) memset((a),b,sizeof(a))
#define TS printf("!!!\n")
#define pb push_back
#define pai pair<int,int>
//using ll = long long;
//using ull= unsigned long long;
//std::ios::sync_with_stdio(false);
using namespace std;
//priority_queue<int,vector<int>,greater<int>> que; //min
typedef long long ll;
typedef unsigned long long ull;
struct way
{
int to;
int val;
}w[];
int ans[];
int pop=;
void dfs(int x)
{
for(int gate=*x-;gate<=*x;gate++)
{
if(w[gate].val==)
{
w[w[gate].to].val=;
w[gate].val=;
dfs((w[gate].to+)/);
ans[pop++]=w[gate].to;
ans[pop++]=gate;
}
}
}
int main()
{
freopen("courier.in", "r", stdin);
freopen("courier.out", "w", stdout);
mem(ans,);
mem(w,);
int n;
cin >> n;
for(int i=;i<=*n;i++)
{
int now,next;
scanf("%d %d",&now,&next);
w[now].to=next;
w[next].to=now;
w[now].val=w[next].val=;
}
dfs();
for(int i=;i<=*n;i++)
{
if(w[i].val==)
{
cout<<"No"<<endl;
return ;
}
}
cout<<"Yes"<<endl;
cout<<ans[];
for(int i=;i<=*n;i++)
{
cout<<" "<<ans[i];
}
}
C:没遇到一个转折点就往前和往后推
#include <bits/stdc++.h>
#include <cstring>
#include <iostream>
#include <algorithm>
#define EPS 1.0e-8
#define PI acos(-1.0)
#define INF 3000000000
#define MOD 1000000009
#define mem(a,b) memset((a),b,sizeof(a))
#define TS printf("!!!\n")
#define pb push_back
//using ll = long long;
//using ull= unsigned long long;
//std::ios::sync_with_stdio(false);
using namespace std;
//priority_queue<int,vector<int>,greater<int>> que; //min
typedef long long ll;
typedef unsigned long long ull;
int a[];
int ans[];
int pop=;
int main()
{
freopen("dales.in", "r", stdin);
freopen("dales.out", "w", stdout);
int t;
cin>> t;
while(t--)
{
int n;
cin >> n;
for(int i=;i<=n;i++)
scanf("%d",&a[i]);
int h=,d=;
for(int i=;i<n;i++)
{
if(a[i]>a[i-]&&a[i]>a[i+])
{
int now1,now2;
for(now1=i-;now1>;now1--)
{
if(a[now1]>=a[now1+])
break;
}
for(now2=i+;now2<=n;now2++)
{
if(a[now2]>=a[now2-])
break;
}
h=max(h,min(now2-i-,i-now1-));
}
else if(a[i]<a[i-]&&a[i]<a[i+])
{
int now1,now2;
for(now1=i-;now1>;now1--)
{
if(a[now1]<=a[now1+])
break;
}
for(now2=i+;now2<=n;now2++)
{
if(a[now2]<=a[now2-])
break;
}
d=max(d,min(now2-i-,i-now1-));
}
}
cout<<h<<" "<<d<<endl;
}
}
D:暴力打表找规律
1->2->4->10->32->122->544->2770->15872->101042->707584->5405530......要算ans[x] i从1开始到x-2 add=ans[i]*ans[x-1-i]/2*C(x-1,i) if(i!=1&&(x-i-i)!=1) add/=2 ans+=add;
#include <bits/stdc++.h>
#include <cstring>
#include <iostream>
#include <algorithm>
#define EPS 1.0e-8
#define PI acos(-1.0)
#define INF 3000000000
#define MOD 1000000009
#define mem(a,b) memset((a),b,sizeof(a))
#define TS printf("!!!\n")
#define pb push_back
#define pai pair<int,int>
//using ll = long long;
//using ull= unsigned long long;
//std::ios::sync_with_stdio(false); using namespace std;
//priority_queue<int,vector<int>,greater<int>> que; //min
typedef long long ll;
typedef unsigned long long ull;
struct way
{
int to;
int val;
}w[];
int ans[];
int pop=;
void dfs(int x)
{
for(int gate=*x;gate>=*x-;gate--)
{
if(w[gate].val==)
{
w[w[gate].to].val=;
w[gate].val=;
dfs((w[gate].to+)/);
ans[pop++]=w[gate].to;
ans[pop++]=gate;
}
}
}
int main()
{
freopen("courier.in", "r", stdin);
freopen("courier.out", "w", stdout);
mem(ans,);
mem(w,);
int n;
cin >> n;
for(int i=;i<=*n;i++)
{
int now,next;
scanf("%d %d",&now,&next);
w[now].to=next;
w[next].to=now;
w[now].val=w[next].val=;
}
dfs();
for(int i=;i<=*n;i++)
{
if(w[i].val==)
{
cout<<"No"<<endl;
return ;
}
}
cout<<"Yes"<<endl;
cout<<ans[];
for(int i=;i<=*n;i++)
{
cout<<" "<<ans[i];
}
}
F:打表约数 枚举
G:数位DP
Summer training #11的更多相关文章
- 2017ecjtu-summer training # 11 POJ 2492
A Bug's Life Time Limit: 10000MS Memory Limit: 65536K Total Submissions: 38280 Accepted: 12452 D ...
- 2017ecjtu-summer training #11 POJ 1018
Communication System Time Limit: 1000MS Memory Limit: 10000K Total Submissions: 29218 Accepted: ...
- 壁虎书4 Training Models
Linear Regression The Normal Equation Computational Complexity 线性回归模型与MSE. the normal equation: a cl ...
- Todo List
Contest 11.13 2016ACM/ICPC亚洲区青岛站(5/13, solved 7/13) Training 11.06 2016年中国大学生程序设计竞赛(合肥)(solved 6/10) ...
- 每日英语:Boost Your Balance; Avoid Falls
If you find yourself needing to sit down to take off your shoes, it might be time to start paying at ...
- PyTorch中的Batch Normalization
Pytorch中的BatchNorm的API主要有: 1 torch.nn.BatchNorm1d(num_features, 2 3 eps=1e-05, 4 5 momentum=0.1, 6 7 ...
- 地区sql
/*Navicat MySQL Data Transfer Source Server : localhostSource Server Version : 50136Source Host : lo ...
- 2014 Multi-University Training Contest 9#11
2014 Multi-University Training Contest 9#11 Killing MonstersTime Limit: 2000/1000 MS (Java/Others) ...
- 【Android Developers Training】 11. 支持不同语言
注:本文翻译自Google官方的Android Developers Training文档,译者技术一般,由于喜爱安卓而产生了翻译的念头,纯属个人兴趣爱好. 原文链接:http://developer ...
随机推荐
- 可视化,matplotlib,seaborn,plotly,pyecharts等等
画频率直方图 import pandas as pd import matplotlib.pyplot as plt Series.value_counts().plot.bar() plt.show ...
- 实习第一个月总结(const关键字、条件编译、volatile关键字、#和##的作用、函数指针)
C语言中const关键字的作用: 修饰局部变量或者全局变量,表示变量n的值不能被改变了 修饰指针,分为常量指针与指针常量,也可以两者结合 常量指针指向的值不能改变,但是这并不是意味着指针本身不能改变, ...
- Flume原理分析与使用案例
1.flume的特点: flume是一个分布式.可靠.和高可用的海量日志采集.聚合和传输的系统.支持在日志系统中定制各类数据发送方,用于收集数据:同时,Flume提供对数据进行简单处理,并写到各种数据 ...
- P2709 小B的询问 【普通莫队】
这是我的莫队入门题,我也了解到了莫队分为普通莫队以及带修莫队.顾名思义,普通莫队不需要修改区间的值,而带修莫队处理区间的值会修改的查询. 能用莫队的前提条件: 1.在知道 [l, r]中信息时,可以在 ...
- [转帖]查看Linux用的桌面是GNOME、KDE或者其他
http://superuser.com/questions/96151/how-do-i-check-whether-i-am-using-kde-or-gnome KDE 基于QT做的 已经越来越 ...
- VerilogHDL学习
No.1 Verilog HDL程序结构 Verilog 描述硬件的基本设计单元是模块 module 复杂的电子电路构建主要是通过模块之间的相互连接调用来实现的,在Verilog中将模块包含在关键字 ...
- wc、iconv命令
一.wc:统计文件打印换行符,单词和字节数 语法: wc [OPTION] ... [FILE] ... wc [OPTION] ... --files0-from = F 描 ...
- 深入理解计算机系统 第十一章 网络编程 part2 第二遍
客户端和服务器通过因特网这个全球网络来通信.从程序员的观点来看,我们可以把因特网看成是一个全球范围的主机集合,具有以下几个属性: 1.每个因特网主机都有一个唯一的 32 为名字,称为它的 IP 地址 ...
- Left4Dead2 LAN Online
Left4Dead2 LAN Online Franklin vs Wolverine 求生之路 局域网联机说明 ============================ 局域网联机方法: 1.先找到 ...
- JS基础_非布尔值的与或运算
<!DOCTYPE html> <html> <head> <meta charset="UTF-8"> <title> ...