C - 怪文書 / Dubious Document

题意:定义一种无序的子序列:在原串中随意地取字符并随意打乱顺序。求多个字符串的最长公共无序子序列。

#include<cstdio>
#include<algorithm>
using namespace std; int n,m,s[],q[];
char c[];
int main(){
scanf("%d",&n);
for (int i=;i<;i++) s[i]=;
while (n--){
scanf("%s",c);
for (int i=;i<;i++) q[i]=;
for (int i=;c[i];i++) q[c[i]-'a']++;
for (int i=;i<;i++) s[i]=min(s[i],q[i]);
}
for (int i=;i<;i++)
while (s[i]--) putchar('a'+i);
}

D - 井井井 / ###

题意:求平行坐标轴的多条直线围成的所有矩形的面积和。

#include<cstdio>
#include<algorithm>
#define MN 200001
using namespace std; const int MOD=1e9+;
int n,m,a[MN],b[MN],A=,B=;
int main(){
scanf("%d%d",&n,&m);
for (int i=;i<=n;i++) scanf("%d",&a[i]);sort(a+,a++n);
for (int i=;i<=m;i++) scanf("%d",&b[i]);sort(b+,b++m);
for (int i=;i<n;i++) A=(1LL*(a[i+]-a[i])*i%MOD*(n-i)+A)%MOD;
for (int i=;i<m;i++) B=(1LL*(b[i+]-b[i])*i%MOD*(m-i)+B)%MOD;
printf("%lld\n",1ll*A*B%MOD);
}

E - TrBBnsformBBtion

定义几种变换:A->BB,B->AA,AAA->空,BBB->空。先给两个字符串,每次询问它们的两个子串是否能相互转换。

题解:将A当成1,B当成2,一个字符串的值为所有字符的和,那么只需要两个字符串的值模3意义下同于即可相互转换。

#include<cstdio>
#include<algorithm>
#define MN 200001
using namespace std; const int MOD=1e9+;
int qa[MN],qb[MN],n,x,y,X,Y;
char a[MN],b[MN];
int main(){
scanf("%s%s",a+,b+);
for (int i=;a[i];i++) qa[i]=qa[i-]+a[i]-'A'+;
for (int i=;b[i];i++) qb[i]=qb[i-]+b[i]-'A'+;
scanf("%d",&n);
while(n--){
scanf("%d%d%d%d",&x,&y,&X,&Y);
puts((qa[y]-qa[x-])%==(qb[Y]-qb[X-])%?"YES":"NO");
}
}

F - Infinite Sequence

求满足下列条件的无穷序列数量:

数字在1到n之间。

an与后面所有项相等。

ai后面的ai个项相等。

题解:dp即可。

#include<cstdio>
#include<algorithm>
#define MN 1000001
using namespace std; const int MOD=1e9+;
int n,f[MN],m;
inline void M(int &x){while(x>=MOD)x-=MOD;}
int main(){
int i,j;
scanf("%d",&n);f[n]=n;m=n-;
for (i=n-;i;i--) f[i]=1LL*(n-)*(n-)%MOD,M(f[i]+=f[i+]),M(f[i]+=m),M(m+=(i+>n?:f[i+])-);
printf("%d\n",f[]);
}

这几乎是我打过码量最少的比赛。

AtCoder Regular Contest 071的更多相关文章

  1. AtCoder Regular Contest 071 D - 井井井 / ###

    题目:http://arc071.contest.atcoder.jp/tasks/arc071_b 题意: 有一个二维的平面,给你xn根竖线和ym根横线,问这些线围成的长方形(正方形)的面积和(要求 ...

  2. [Atcoder Regular Contest 071 F & JZOJ5450]Neutral

    题目大意 一个无限长的序列\(a\), 需要满足 1.数列中的每一个数在\(1\)到\(n\)之间. 2.对于\(i>=n, j>=n\), \(a_i=a_j\). 3.对于\(i< ...

  3. AtCoder Regular Contest 061

    AtCoder Regular Contest 061 C.Many Formulas 题意 给长度不超过\(10\)且由\(0\)到\(9\)数字组成的串S. 可以在两数字间放\(+\)号. 求所有 ...

  4. AtCoder Regular Contest 094 (ARC094) CDE题解

    原文链接http://www.cnblogs.com/zhouzhendong/p/8735114.html $AtCoder\ Regular\ Contest\ 094(ARC094)\ CDE$ ...

  5. AtCoder Regular Contest 092

    AtCoder Regular Contest 092 C - 2D Plane 2N Points 题意: 二维平面上给了\(2N\)个点,其中\(N\)个是\(A\)类点,\(N\)个是\(B\) ...

  6. AtCoder Regular Contest 093

    AtCoder Regular Contest 093 C - Traveling Plan 题意: 给定n个点,求出删去i号点时,按顺序从起点到一号点走到n号点最后回到起点所走的路程是多少. \(n ...

  7. AtCoder Regular Contest 094

    AtCoder Regular Contest 094 C - Same Integers 题意: 给定\(a,b,c\)三个数,可以进行两个操作:1.把一个数+2:2.把任意两个数+1.求最少需要几 ...

  8. AtCoder Regular Contest 095

    AtCoder Regular Contest 095 C - Many Medians 题意: 给出n个数,求出去掉第i个数之后所有数的中位数,保证n是偶数. \(n\le 200000\) 分析: ...

  9. AtCoder Regular Contest 102

    AtCoder Regular Contest 102 C - Triangular Relationship 题意: 给出n,k求有多少个不大于n的三元组,使其中两两数字的和都是k的倍数,数字可以重 ...

随机推荐

  1. ios单独的页面支持横竖屏的状态调整,HTML5加载下(更新2)

    单独的页面支持横竖屏的状态调整,HTML5加载下 工程中设置只支持竖屏状态,在加载HTML5的界面可以是横竖屏的,在不对工程其他界面/设置做调整的同时,可以这样去 #import "View ...

  2. Java.util.Map排序输出

    在java的众多Map实现中,Map基本上是不能保证顺序的(LinkedHashMap可以保证插入顺序或者访问顺序,TreeMap默认按照key升序但可以自定义Comparator),在开发过程中当数 ...

  3. 快速学习Bash

    作者:Vamei 出处:http://www.cnblogs.com/vamei 严禁转载. Shell是Linux下经典的文本互动方式,而Bash是现在最常用的一种Shell.我在这里总结了Bash ...

  4. Java I/O---RandomAccessFile类(随机访问文件的读取和写入)

    1.JDK API中RandomAccessFile类的描述 此类的实例支持对随机访问文件的读取和写入.随机访问文件的行为类似存储在文件系统中的一个大型 byte 数组.存在指向该隐含数组的光标或索引 ...

  5. Java8函数之旅 (八) - 组合式异步编程

    前言 随着多核处理器的出现,如何轻松高效的进行异步编程变得愈发重要,我们看看在java8之前,使用java语言完成异步编程有哪些方案. JAVA8之前的异步编程 继承Thead类,重写run方法 实现 ...

  6. java方式连接数据操作数据库

    package com.bdqn.dao.impl; import java.io.IOException;import java.io.InputStream;import java.io.Seri ...

  7. nova创建虚拟机源码分析系列之五 nova源码分发实现

    前面讲了很多nova restful的功能,无非是为本篇博文分析做铺垫.本节说明nova创建虚拟机的请求发送到openstack之后,nova是如何处理该条URL的请求,分析到处理的类. nova对于 ...

  8. spring_boot_pay支付宝,微信,银联支付详细代码案例

    spring-boot-pay 支付服务:支付宝,微信,银联详细代码案例(除银联支付可以测试以外,支付宝和微信支付测试均需要企业认证,个人无法完成测试),项目启动前请仔细阅读 注意事项  . 友情提示 ...

  9. 关于HTTP协议头域详解

    HTTP1.1 请求头:消息头  Accept:text/html,image/*  告诉服务器,客户机支持的数据类型 Accept-Charset:ISO-8859-1  告诉服务器,客户机采用的编 ...

  10. C#学习之设计模式:工厂模式

    最近研究一下设计模式中工厂模式的应用,在此记录如下: 什么是工厂模式? 工厂模式属于设计模式中的创造型设计模式的一种.它的主要作用是协助我们创建对象,为创建对象提供最佳的方式.减少代码中的耦合程度,方 ...