暴力模拟即可

就是情况略多

#include <cstdio>
#include <algorithm>
#include <cstring>
using namespace std;
int n,a,b,num[],pos,ans=;
int main(){
scanf("%d %d %d",&n,&a,&b);
for(int i=;i<=n;i++)
scanf("%d",&num[i]);
if(n%==){
pos=n/+;
if(num[pos]==)
ans+=min(a,b);
for(int i=pos-,j=pos+;i>=;i--,j++){
if(num[i]==num[j]&&num[i]!=&&num[j]!=)
continue;
else if(num[i]!=num[j]&&num[i]==){
if(num[j]==){
printf("-1");
return ;
}
else{
ans+=a;
}
}
else if(num[i]!=num[j]&&num[i]==){
if(num[j]==){
printf("-1");
return ;
}
else{
ans+=b;
}
}
else if(num[i]!=num[j]&&num[i]==){
if(num[j]==){
ans+=b;
}
else if(num[j]==){
ans+=a;
}
}
else if(num[i]==num[j]&&num[i]==&&num[j]==){
ans+=min(a,b)*;
}
}
}
else{
pos=n/;
for(int i=pos,j=pos+;i>=;i--,j++){
if(num[i]==num[j]&&num[i]!=&&num[j]!=)
continue;
else if(num[i]!=num[j]&&num[i]==){
if(num[j]==){
printf("-1");
return ;
}
else{
ans+=a;
}
}
else if(num[i]!=num[j]&&num[i]==){
if(num[j]==){
printf("-1");
return ;
}
else{
ans+=b;
}
}
else if(num[i]!=num[j]&&num[i]==){
if(num[j]==){
ans+=b;
}
else if(num[j]==){
ans+=a;
}
}
else if(num[i]==num[j]&&num[i]==&&num[j]==){
ans+=min(a,b)*;
}
}
}
printf("%d",ans);
}

题解——Codeforces Round #507 (based on Olympiad of Metropolises) T1 (模拟)的更多相关文章

  1. 题解——Codeforces Round #507 (based on Olympiad of Metropolises) T2(模拟)

    T2还是模拟 枚举一下第一个放哪里 然后贪心的反转即可 虽然我也不会证,但是这题肯定有解qwq #include <cstdio> #include <algorithm> # ...

  2. Codeforces Round #583 (Div. 1 + Div. 2, based on Olympiad of Metropolises) A题

    A. Optimal Currency ExchangeAndrew was very excited to participate in Olympiad of Metropolises. Days ...

  3. [题解] Codeforces Round #549 (Div. 2) B. Nirvana

    Codeforces Round #549 (Div. 2) B. Nirvana [题目描述] B. Nirvana time limit per test1 second memory limit ...

  4. Codeforces Round #367 (Div. 2) B. Interesting drink (模拟)

    Interesting drink 题目链接: http://codeforces.com/contest/706/problem/B Description Vasiliy likes to res ...

  5. 【Codeforces Round #507 (Div. 2, based on Olympiad of Metropolises) B】Shashlik Cooking

    [链接] 我是链接,点我呀:) [题意] 在这里输入题意 [题解] 翻转一次最多影响2k+1个地方. 如果n<=k+1 那么放在1的位置就ok.因为能覆盖1..k+1 如果n<=2k+1 ...

  6. 【Codeforces Round #507 (Div. 2, based on Olympiad of Metropolises) A】Palindrome Dance

    [链接] 我是链接,点我呀:) [题意] 在这里输入题意 [题解] i从1..n/2循环一波. 保证a[i]和a[n-i+1]就好. 如果都是2的话填上min(a,b)*2就好 其他情况跟随非2的. ...

  7. Codeforces Round #507 (Div. 2, based on Olympiad of Metropolises) D mt19937

    https://codeforces.com/contest/1040/problem/D 用法 mt19937 g(种子); //种子:time(0) mt19937_64 g(); //long ...

  8. Codeforces Round #433 (Div. 2, based on Olympiad of Metropolises) D. Jury Meeting(双指针模拟)

    D. Jury Meeting time limit per test 1 second memory limit per test 512 megabytes input standard inpu ...

  9. Codeforces Round #433 (Div. 2, based on Olympiad of Metropolises)

    A. Fraction 题目链接:http://codeforces.com/contest/854/problem/A 题目意思:给出一个数n,求两个数a+b=n,且a/b不可约分,如果存在多组满足 ...

随机推荐

  1. Vue系列之 => 自定义键盘修饰符

    <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8&quo ...

  2. 大数据处理框架之Strom:Storm集群环境搭建

    搭建环境 Red Hat Enterprise Linux Server release 7.3 (Maipo)      zookeeper-3.4.11 jdk1.7.0_80      Pyth ...

  3. laravel 服务容器实例——深入理解IoC模式

    刚刚接触laravel,对于laravel的服务容器不是很理解.看了<Laravel框架关键技术解析>和网上的一些资料后对于服务容器有了一些自己的理解,在这里分享给大家 1.依赖 IoC模 ...

  4. File §1

    The Class of File, it can be seen as one document, also can be seen as list of documents. File  f = ...

  5. super和this关键字

    super关键字: this关键字: 栈内存和堆内存和方法区内存分析: 其中,new出来的即对象都在堆内存区: main方法先进栈: 方法区中 [[ super_class ]]是编译器生成,代码表现 ...

  6. eclipse 依赖别的 工程 断点进不去

    maven Debug 发现进不了断点. 点击右键-->Properties-->Java Compiler-->Classfile Generation, 勾选上Add line  ...

  7. 通过 Java 线程堆栈进行性能瓶颈分析

    改善性能意味着用更少的资源做更多的事情.为了利用并发来提高系统性能,我们需要更有效的利用现有的处理器资源,这意味着我们期望使 CPU 尽可能出于忙碌状态(当然,并不是让 CPU 周期出于应付无用计算, ...

  8. javaweb笔记09—(session会话及验证码问题)

    第一部分+++++++++++1.session会话 定义:session会话——对某个web应用程序的一次整体访问的过程. 由来:无连接的http协议是无状态的,不能保存每个客户端私有信息 a用户和 ...

  9. mycat的下载和安装

    1.下载. 网址:http://dl.mycat.io/ 2.安装. 解压:tar zxf Mycat-server-1.6.5-release-20180122220033-linux.tar.gz ...

  10. CentOS7下部署Django项目详细操作步骤

    严格按下面步骤 一.更新系统软件包 yum update -y 二.安装软件管理包和可能使用的依赖 yum -y groupinstall "Development tools" ...