广州大学第十八届ACM大学生程序设计竞赛(同步赛)——题解
这套题我答的很失败。没有按照题目的难度去答题,前期浪费了不少时间。
题目:
A-字符画
题解:思维、模拟。这道题我的通过率为62.5,没有过的原因是因为对细节的处理和把控不到位,对一些点忽视,我也记录了搜索的过程,但没有把搜索过的点消掉,而且没有找到最好的顺序去解答这道题,我是按照横的方法去找字符,但是如果按照竖的方法去搜索的话,就能ac。
题目如下:
还有:
代码如下:
点击查看代码
#include<bits/stdc++.h>
#define endl '\n'
//#define int long long
using namespace std;
typedef long long ll;
typedef pair<int, int> PII;
const int N = 2e5+10;
int n, m, k,sum1,sum2,sum3;
char a[505][505];
bool b[505][505];
bool check2(int x,int y){
if(b[x][y]==0) return true;
else return false;
}
void sovle(){
cin>>n>>m;
for(int i=0;i<n;i++){
for(int j=0;j<m;j++){
cin>>a[i][j];
}
}
for(int i=0;i<m-2;i++){
for(int j=0;j<n-4;j++){
if(a[j][i]=='#'&&a[j+1][i]=='#'&&a[j+2][i]=='#'&&a[j+3][i]=='#'&&a[j+4][i]=='#'&&a[j][i+1]=='#'&&a[j+1][i+1]=='.'&&a[j+2][i+1]=='#'&&a[j+3][i+1]=='.'&&a[j+4][i+1]=='#'&&a[j][i+2]=='#'&&a[j+1][i+2]=='#'&&a[j+2][i+2]=='#'&&a[j+3][i+2]=='#'&&a[j+4][i+2]=='#'&&check2(j,i)&&check2(j+1,i)&&check2(j+2,i)&&check2(j+3,i)&&check2(j+4,i)&&check2(j,i+1)&&check2(j+1,i+1)&&check2(j+2,i+1)&&check2(j+3,i+1)&&check2(j+4,i+1)&&check2(j,i+2)&&check2(j+1,i+2)&&check2(j+2,i+2)&&check2(j+3,i+2)&&check2(j+4,i+2)){
sum3++;
b[j][i]=b[j+1][i]=b[j+2][i]=b[j+3][i]=b[j+4][i]=b[j][i+1]=b[j+1][i+1]=b[j+2][i+1]=b[j+3][i+1]=b[j+4][i+1]=b[j][i+2]=b[j+1][i+2]=b[j+2][i+2]=b[j+3][i+2]=b[j+4][i+2]=1;
}
else if(a[j][i]=='#'&&a[j+1][i]=='#'&&a[j+2][i]=='#'&&a[j+3][i]=='#'&&a[j+4][i]=='#'&&a[j][i+1]=='#'&&a[j+1][i+1]=='.'&&a[j+2][i+1]=='#'&&a[j][i+2]=='#'&&a[j+1][i+2]=='#'&&a[j+2][i+2]=='#'&&check2(j,i)&&check2(j+1,i)&&check2(j+2,i)&&check2(j+3,i)&&check2(j+4,i)&&check2(j,i+1)&&check2(j+1,i+1)&&check2(j+2,i+1)&&check2(j,i+2)&&check2(j+1,i+2)&&check2(j+2,i+2)){
sum1++;
b[j][i]=b[j+1][i]=b[j+2][i]=b[j+3][i]=b[j+4][i]=b[j][i+1]=b[j+1][i+1]=b[j+2][i+1]=b[j][i+2]=b[j+1][i+2]=b[j+2][i+2]=1;
}
else if(a[j][i]=='#'&&a[j][i+1]=='#'&&a[j+1][i+1]=='.'&&a[j+2][i+1]=='#'&&a[j][i+2]=='#'&&a[j+1][i+2]=='#'&&a[j+2][i+2]=='#'&&a[j+3][i+2]=='#'&&a[j+4][i+2]=='#'&&check2(j,i)&&check2(j,i+1)&&check2(j+1,i+1)&&check2(j+2,i+1)&&check2(j,i+2)&&check2(j+1,i+2)&&check2(j+2,i+2)&&check2(j+3,i+2)&&check2(j+4,i+2)){
sum2++;
b[j][i]=b[j][i+1]=b[j+1][i+1]=b[j+2][i+1]=b[j][i+2]=b[j+1][i+2]=b[j+2][i+2]=b[j+3][i+2]=b[j+4][i+2]=1;
}
}
}
cout<<sum1<<' '<<sum2<<' '<<sum3;
}
int main()
{
//ios::sync_with_stdio(false), cin.tie(0),cout.tie(0);
int t = 1;
//cin>>t;
while (t --){
sovle();
}
return 0;
}
**G-能赢吗?会赢的!**
题解:思路正确,但是对二分深度理解不够,找值的时候出现问题,并且对题目理解清晰不够。
题目如下:
代码如下:
点击查看代码
#include <bits/stdc++.h>
using namespace std;
#define int long long
typedef pair<int,int> PII;
const int N=2e6+10;
int v[100001];
int c[100001];
int n;
bool check(int x)
{
for(int i=1;i<=n;i++){
if(x>v[i]+c[i])
{
x+=c[i]/2;
v[i+1]=(c[i]+1)/2;
}else
return 0;
}
return true;
}
signed main ()
{
int t=1;
//cin>>t;
while(t--)
{
cin>>n;
for(int i=1;i<=n;i++){
cin>>c[i];
}
v[1]=c[1];
long long r =1e12;
long long l =1;
while(l<r)
{
int mid=(l+r)>>1;
if(check(mid))
{
r=mid;
}else
{
l=mid+1;
}
}
cout<<l;
}
return 0;
}
广州大学第十八届ACM大学生程序设计竞赛(同步赛)——题解的更多相关文章
- “浪潮杯”第九届山东省ACM大学生程序设计竞赛重现赛 C-Cities
题目描述:There are n cities in Byteland, and the ith city has a value ai. The cost of building a bidirec ...
- Alice and Bob(2013年山东省第四届ACM大学生程序设计竞赛)
Alice and Bob Time Limit: 1000ms Memory limit: 65536K 题目描述 Alice and Bob like playing games very m ...
- 2013年山东省第四届ACM大学生程序设计竞赛-最后一道大水题:Contest Print Server
点击打开链接 2226: Contest Print Server Time Limit: 1 Sec Memory Limit: 128 MB Submit: 53 Solved: 18 [Su ...
- 山东省第四届ACM大学生程序设计竞赛解题报告(部分)
2013年"浪潮杯"山东省第四届ACM大学生程序设计竞赛排名:http://acm.upc.edu.cn/ranklist/ 一.第J题坑爹大水题,模拟一下就行了 J:Contes ...
- [2012山东省第三届ACM大学生程序设计竞赛]——n a^o7 !
n a^o7 ! 题目:http://acm.sdut.edu.cn/sdutoj/problem.php?action=showproblem&problemid=2413 Time Lim ...
- 河南省第十一届ACM大学生程序设计竞赛
nyoj-1365-山区修路 内存限制:128MB 时间限制:3000ms 特判: No通过数:4 提交数:4 难度:3 题目描述: SNJ位于HB省西部一片群峰耸立的高大山地,横亘于A江.B水之间, ...
- angry_birds_again_and_again(2014年山东省第五届ACM大学生程序设计竞赛A题)
http://acm.sdut.edu.cn/sdutoj/problem.php?action=showproblem&problemid=2877 题目描述 The problems ca ...
- 第八届山东省ACM大学生程序设计竞赛个人总结
因为省赛,从开学紧张到5月7号.心思也几乎全放在ACM的训练上.因为我还是校台球协会的会长,所以台协还有一些事情需要忙,但是我都给延迟了.老会长一直在催我办校赛,但我一直说 等等吧,因为校赛只能在周六 ...
- sdut Mountain Subsequences 2013年山东省第四届ACM大学生程序设计竞赛
Mountain Subsequences 题目描述 Coco is a beautiful ACMer girl living in a very beautiful mountain. There ...
- ZZUOJ-1195-OS Job Scheduling(郑州大学第七届ACM大学生程序设计竞赛E题)
1195: OS Job Scheduling Time Limit: 2 Sec Memory Limit: 128 MB Submit: 106 Solved: 35 [id=1195&quo ...
随机推荐
- 一文详解编辑距离(Levenshtein Distance)
更多博文请关注:https://blog.bigcoder.cn 一. 什么是Levenshtein Distance Levenshtein Distance,一般称为编辑距离(Edit Dista ...
- tkinter时钟(实时更新显示)
from tkinter import * import time root = Tk() root.geometry('300x200') var = StringVar() def show(): ...
- 如何5分钟上手使用OCR
随便打开一个Microsoft Visual Studio,新建一个WinForms项目,从下面列表中随便选择一个NET框架. net35;net40;net45;net451;net452;net4 ...
- 基于docker一键化部署LNMP环境
cd / && wget https://files.cnblogs.com/files/superlinux/install_lnmp.sh && bash inst ...
- 一个前后端都有的后台管理系统,使用nest.js和vue3
今天介绍一个新的Vue后台管理框架,相比其他后台功能丰富管理系统,这个后台管理系统可以用干净简洁来形容--Nova-admin Nova-admin Nova-admin 是一个基于Vue3.Vite ...
- 『手撕Vue-CLI』拷贝模板
开篇 经过上篇文章的介绍,实现了可以根据用户选择的模板名称加上对应的版本号,可以下载对应的模板,并且将下载之后的文件存放在用户目录下的 .nue-template文件夹中. 接下来这篇文章主要实现内容 ...
- 箭头函数 函数中的this指向
// 箭头函数 // 在匿名函数中,使用 => 箭头来替换 关键词 function // 箭头定义下 () 和 {} 之间 // 等于在使 ...
- 解决Python使用GPU
在Python中使用GPU进行计算通常涉及到一些特定的库,如NumPy.SciPy的GPU加速版本(如CuPy.PyCUDA等)或深度学习库(如TensorFlow.PyTorch等).这些库能够利用 ...
- error pulling image configuration: Get https://eastasia.data.mcr.microsoft.com -- net/http: TLS handshake timeout
error pulling image configuration: Get https://eastasia.data.mcr.microsoft.com/b29889755b1f4e46b6b44 ...
- 一文带你搞清楚Python的多线程和多进程
本文分享自华为云社区<Python中的多线程与多进程编程大全[python指南]>,作者:柠檬味拥抱. Python作为一种高级编程语言,提供了多种并发编程的方式,其中多线程与多进程是最常 ...