Educational Codeforces Round 26 B,C
B. Flag of Berland
链接:http://codeforces.com/contest/837/problem/B
思路:题目要求判断三个字母是否是条纹型的,而且宽和高相同,那么先求出三个字母的边界,算下面积,是否和数量相同,不相同的话肯定不为条纹型,然后判断下他们宽和高的关系就行了
实现代码:
#include<bits/stdc++.h>
#include<iostream>
#include<cstdio>
#include<string>
#include<cstring>
#include<cmath>
#include<algorithm>
#include<map>
#include<queue>
#include<stack>
#include<set>
#include<list>
using namespace std;
#define ll long long
#define sd(x) scanf("%d",&x)
#define sdd(x,y) scanf("%d%d",&x,&y)
#define sddd(x,y,z) scanf("%d%d%d",&x,&y,&z)
#define sf(x) scanf("%s",x)
#define ff(i,x,y) for(int i = x;i <= y;i ++)
#define fj(i,x,y) for(int i = x;i >= y;i --)
#define mem(s,x) memset(s,x,sizeof(s));
#define pr(x) printf("%d",x);
const int Mod = 1e9+;
const int inf = 1e9;
const int Max = 1e5+;
//void exgcd(ll a,ll b,ll& d,ll& x,ll& y){if(!b){d=a;x=1;y=0;}else{exgcd(b,a%b,d,y,x);y-=x*(a/b);}}
//ll inv(ll a,ll n){ll d, x, y;exgcd(a,n,d,x,y);return (x+n)%n;}
//int gcd(int a,int b) { return (b>0)?gcd(b,a%b):a; }
//int lcm(int a, int b) { return a*b/gcd(a, b); } int main()
{
int n,m,en_rx=,be_rx=inf,en_ry=,be_ry=inf,en_gx=,en_gy=,en_bx=,en_by=,be_gx=inf,be_gy=inf,be_bx=inf,be_by=inf,r,g,b;
char mp[][];
sdd(n,m);
r=;g=;b=;
ff(i,,n){
ff(j,,m){
cin>>mp[i][j];
if(mp[i][j]=='R'){
r++; en_rx = max(i,en_rx);en_ry = max(j,en_ry);be_rx=min(i,be_rx);be_ry=min(j,be_ry);}
if(mp[i][j]=='G'){ g++; en_gx = max(i,en_gx);en_gy = max(j,en_gy);be_gx=min(i,be_gx);be_gy=min(j,be_gy);}
if(mp[i][j]=='B'){ b++; en_bx = max(i,en_bx);en_by = max(j,en_by);be_bx=min(i,be_bx);be_by=min(j,be_by);}
}
}
if(n*m<){
cout<<"NO"<<endl;return ;}
int num = (en_rx - be_rx+)*(en_ry - be_ry+);
//cout<<num<<endl;
//cout<<en_gx<<" "<<be_gx<<endl;
//cout<<en_ry<<" "<<be_ry<<endl;
if((en_rx - be_rx)==(en_gx - be_gx)&&(en_gx - be_gx)==(en_bx - be_bx)&&(en_ry - be_ry)==(en_gy - be_gy)&&(en_gy - be_gy)==(en_by - be_by)&&num==r)
cout<<"YES"<<endl;
else
cout<<"NO"<<endl;
return ;
}
C. Two Seals
题目链接:http://codeforces.com/contest/837/problem/C
思路:
给你几个方块,让你选两个方块放在a*b范围里,要求面积最大,方块可以转90度,直接暴力模拟就是了
#include<bits/stdc++.h>
using namespace std;
#define ll long long
ll x[],y[];
int a,b;
ll max(ll x,ll y)
{
if(x>y) return x;
return y;
}
bool check(int i,int j){
ll a1=x[i]+x[j],b1=max(y[i],y[j]);
ll a2=y[i]+x[j],b2=max(x[i],y[j]);
ll a3=x[i]+y[j],b3=max(y[i],x[j]);
ll a4=y[i]+y[j],b4=max(x[i],x[j]);
if((a1<=a && b1<=b) || (a2<=a && b2<=b) || (a3<=a && b3<=b) || (a4<=a && b4<=b))
return true;
if((a1<=b && b1<=a) || (a2<=b && b2<=a) || (a3<=b && b3<=a) || (a4<=b && b4<=a))
return true;
return false;
}
int main()
{
int n,c=,y1,x1,i,j;
cin>>n>>a>>b;
for(i=;i<n;i++)
cin>>x[i]>>y[i];
ll ans = ,maxx = ;
for(i=;i<n-;i++){
for(j=i+;j<n;j++){
if(check(i,j)==){
ans = x[i]*y[i]+x[j]*y[j];
//cout<<i<<" "<<j<<" "<<ans<<endl;
maxx = max(maxx,ans);
}
}
}
cout<<maxx<<endl;
return ;
}
ps:好鸡儿菜啊,打了一年还是这么水。
Educational Codeforces Round 26 B,C的更多相关文章
- Educational Codeforces Round 26
Educational Codeforces Round 26 困到不行的场,等着中午显示器到了就可以美滋滋了 A. Text Volume time limit per test 1 second ...
- CodeForces 837F - Prefix Sums | Educational Codeforces Round 26
按tutorial打的我血崩,死活挂第四组- - 思路来自FXXL /* CodeForces 837F - Prefix Sums [ 二分,组合数 ] | Educational Codeforc ...
- CodeForces - 837E - Vasya's Function | Educational Codeforces Round 26
/* CodeForces - 837E - Vasya's Function [ 数论 ] | Educational Codeforces Round 26 题意: f(a, 0) = 0; f( ...
- CodeForces 837D - Round Subset | Educational Codeforces Round 26
/* CodeForces 837D - Round Subset [ DP ] | Educational Codeforces Round 26 题意: 选k个数相乘让末尾0最多 分析: 第i个数 ...
- Educational Codeforces Round 26 [ D. Round Subset ] [ E. Vasya's Function ] [ F. Prefix Sums ]
PROBLEM D - Round Subset 题 OvO http://codeforces.com/contest/837/problem/D 837D 解 DP, dp[i][j]代表已经选择 ...
- Educational Codeforces Round 26 D dp
D. Round Subset time limit per test 2 seconds memory limit per test 256 megabytes input standard inp ...
- Educational Codeforces Round 26 F. Prefix Sums 二分,组合数
题目链接:http://codeforces.com/contest/837/problem/F 题意:如题QAQ 解法:参考题解博客:http://www.cnblogs.com/FxxL/p/72 ...
- Educational Codeforces Round 26 E - Vasya's Function
数论题还是好恶心啊. 题目大意:给你两个不超过1e12的数 x,y,定义一个f ( x, y ) 如果y==0 返回 0 否则返回1+ f ( x , y - gcd( x , y ) ); 思路:我 ...
- Educational Codeforces Round 26 A B C题
题目链接 A. Text Volume 题意:计算句子中,每个单词大写字母出现次数最多的那个的出现次数(混不混乱QAQ). 解题思路:注意getchar()就没啥了. #include<cstd ...
随机推荐
- 8-51单片机ESP8266学习-AT指令(单片机采集温湿度数据通过8266发送给C#TCP客户端显示)
http://www.cnblogs.com/yangfengwu/p/8785516.html 先写单片机端的程序 先把源码和资料链接放到这里 链接: https://pan.baidu.com/s ...
- [julia]本地离线安装package
1.引言 julia最近十分受关注,其结合了python的通用性,Ruby的动态性,C的代码运行速度,R的包管理和数据分析功能,perl的字符串处理能力,lisp的宏能力,matlab的矩阵计算规则, ...
- Luogu4630 APIO2018 Duathlon 圆方树、树形DP
传送门 要求的是一条按顺序经过\(s,t,c\)三个点的简单路径.简单路径的计数问题不难想到点双联通分量,进而使用圆方树进行求解. 首先将原图缩点,对于一个大小为\(size\)的点双联通分量内,在这 ...
- Ionic app升级插件开发
终于走到了写插件的这个地方了,插件的过程: 1.安装plugman插件,管理我们的程序 npm install -g plugman 2.创建插件项目appUpgrade,cd 到你的目标目录下,执行 ...
- Ionic 动态配置url路由的设置
随着Ionic App功能的不断增加,需要路由的url设置就越来越多,不喜欢在config函数中写一堆硬代码,一则不美,二则维护起来也麻烦,能不能把这些数据独立出来呢? 经过查找资料与各种实验,最终找 ...
- 分布式系统session一致性的问题
session的概念 什么是session? 服务器为每个用户创建一个会话,存储用户的相关信息,以便多次请求能够定位到同一个上下文.这样,当用户在应用程序的 Web 页之间跳转时,存储在 Sessio ...
- Python-文件操作—_19
1,文件操作 模特主妇护士老师.txt 1,文件路径:d:\模特主妇护士老师.txt 2,编码方式:utf-8 gbk .... 3,操作方式:只读,只写,追加,读写,写读..... 以什么编码方式储 ...
- 饿了么element UI<el-dialog>弹出层</el-dialog>修改默认样式不能在<style scoped>修改
如果在非scoped下,修改el-dialog自动添加的DIV类名的style加上important,可以覆盖原来的width,但这样会让整个项目的样式都乱套. 如果在scoped下修改style.所 ...
- linux内核分析第八次实验
20135118 罗鹏越 本周学习的是linux内核中的进程调度,之前我们在操作系统中有讲解进程调度的分类,以及一些调度算法.而linux中的进程调度有所不同,首先老师讲解了进程调度和进程调度的时机, ...
- 【读书笔记】Linux内核设计与实现(第三章)
3.1 进程 处于执行期的程序. 进程就是正在执行的程序代码的实时结果.内核需要有效而又透明地管理所有细节. 执行线程(简称线程):在进程中活动的对象.每个线程都拥有一个独立的程序计数器.进程栈和一组 ...