Codeforces Round #277 (Div. 2) 解题报告
题目地址:http://codeforces.com/contest/486
A题.Calculating Function
奇偶性判断,简单推导公式。
#include<cstdio>
#include<iostream> using namespace std; int main()
{
long long n;
cin>>n;
if(n%==) {
cout<<(-)*((n-)/+)+n<<endl;
} else
cout<<((n-)/+)*(-)<<endl; return ;
}
B题.OR in Matrix
把必须为0的先填上,然后判断1的是否符合条件。若符合,让剩下的全为1输出,不符合就输出no。
#include<cstdio>
#include<iostream>
#include<string.h>
#include<stdlib.h> using namespace std; int n,m,
a[][],b[][]; void change(int x,int y)
{
for(int i=;i<=n;i++) {
a[x][i]=;
}
for(int j=;j<=m;j++) {
a[j][y]=;
} } int check(int x,int y)
{
for(int i=;i<=n;i++) {
if(a[x][i]) return ;
} for(int i=;i<=m;i++) {
if(a[i][y]) return ;
} return ;
} int main()
{
memset(a,-,sizeof(a)); scanf("%d%d",&m,&n);
for(int i=;i<=m;i++)
for(int j=;j<=n;j++) {
scanf("%d",&b[i][j]);
if(!b[i][j]) {
change(i,j);
}
} for(int i=;i<=m;i++)
for(int j=;j<=n;j++) {
if(b[i][j]) {
if(check(i,j)) continue;
printf("NO\n");
exit();
}
} printf("YES\n");
for(int i=;i<=m;i++){
for(int j=;j<=n;j++){
if(a[i][j]<) printf("%d ",a[i][j]+);
else printf("%d ",a[i][j]);
}
printf("\n");
} return ;
}
C题.Palindrome Transformation
转化为回文串需要改动的最小步骤数。
只在P所在的那半侧改变。然后求出较小的移动的步数。累加。
#include<cstdio>
#include<iostream>
#include<string.h>
#include<algorithm> const int N=1e5+;
using namespace std; int main()
{
int i,n,p,len,ret=,l,r;
char a[N]; scanf("%d%d",&n,&p);
scanf("%s",a); p--;
if(p>=n/) p=n--p; l=n;r=-;
for(int i=;i<n/;i++) {
if(a[i]!=a[n--i]) {
ret+=min(abs(a[i]-a[n--i]),-abs(a[i]-a[n--i]));
l=min(l,i);
r=max(r,i);
}
} if(l==n) {
printf("0\n");
return ;
} ret+=(r-l)+min(abs(l-p),abs(r-p)); printf("%d\n",ret); return ;
}
Codeforces Round #277 (Div. 2) 解题报告的更多相关文章
- Codeforces Round #324 (Div. 2)解题报告
---恢复内容开始--- Codeforces Round #324 (Div. 2) Problem A 题目大意:给二个数n.t,求一个n位数能够被t整除,存在多组解时输出任意一组,不存在时输出“ ...
- Codeforces Round #382 (Div. 2) 解题报告
CF一如既往在深夜举行,我也一如既往在周三上午的C++课上进行了virtual participation.这次div2的题目除了E题都水的一塌糊涂,参赛时的E题最后也没有几个参赛者AC,排名又成为了 ...
- Codeforces Round #380 (Div. 2) 解题报告
第一次全程参加的CF比赛(虽然过了D题之后就开始干别的去了),人生第一次codeforces上分--(或许之前的比赛如果都参加全程也不会那么惨吧),终于回到了specialist的行列,感动~.虽然最 ...
- Codeforces Round #216 (Div. 2)解题报告
又范低级错误! 只做了两题!一道还被HACK了,囧! A:看了很久!应该是到语文题: 代码:#include<iostream> #include<]; ,m2=; ;i ...
- Codeforces Round #281 (Div. 2) 解题报告
题目地址:http://codeforces.com/contest/493 A题 写完后就交了,然后WA了,又读了一遍题,没找出错误后就开始搞B题了,后来回头重做的时候才发现,球员被红牌罚下场后还可 ...
- Codeforces Round #276 (Div. 2) 解题报告
题目地址:http://codeforces.com/contest/485 A题.Factory 模拟.判断是否出现循环,如果出现,肯定不可能. 代码: #include<cstdio> ...
- Codeforces Round #350 (Div. 2)解题报告
codeforces 670A. Holidays 题目链接: http://codeforces.com/contest/670/problem/A 题意: A. Holidays On the p ...
- Codeforces Round #479 (Div. 3)解题报告
题目链接: http://codeforces.com/contest/977 A. Wrong Subtraction 题意 给定一个数x,求n次操作输出.操作规则:10的倍数则除10,否则减1 直 ...
- Codeforces Round #515 (Div. 3) 解题报告(A~E)
题目链接:http://codeforces.com/contest/1066 1066 A. Vova and Train 题意:Vova想坐火车从1点到L点,在路上v的整数倍的点上分布着灯笼,而在 ...
随机推荐
- 扩展Log4j支持JNDI数据源
log4j.properties配置文件: log4j.rootLogger=INFO,db #使用log4j扩展支持JNDI数据源 log4j.appender.db=com.qdgswx.log4 ...
- QEventLoop 的使用两例
熟悉的陌生人 Qt 是事件驱动的,所以当你用Qt的时候,几乎时时刻刻和 QEventLoop 打交道.,只是你可能没有意识到: QCoreApplicaton::exec() QApplication ...
- Cmake,source_group
Cmake的source_group命令相当于VS里面给编译需要的文件归类,把一些相同性质的文件放一个类里面,这些“类”,可以在VS 图形界面下左边(一般情况下),看到header文件夹下面的H文件, ...
- JFrame编程
最基础的窗口 public test1() { setTitle("test1"); setSize(300,300); //设置窗口大小 setLocation(300,300) ...
- 找出最小的k个数
•已知数组中的n个正数,找出其中最小的k个数. •例如(4.5.1.6.2.7.3.8),k=4,则最小的4个数是1,2,3,4 •要求: –高效: –分析时空效率 •扩展:能否设计出适合在海量数据中 ...
- debug openStack
ERROR neutron.agent.l3.agent [-] An interface driver must be specified No valid host was found. Ther ...
- 【译】Javascript中的数据类型
这篇文章通过四种方式获取Javascript中的数据类型:通过隐藏的内置[[Class]]属性:通过typeof运算符:通过instanceof运算符:通过函数Array.isArray().我们也会 ...
- python glob标准库基础学习
#glob文件名模式匹配#作用:使用unix shell规则查找与一个模式匹配文件名"""尽管glob api很小,但这个模块很强大,只要程序需要查找文件系统中名字与某种 ...
- Oracle 中按条件过滤重复记录
在数据处理中,经常会遇到类似这样的情况:数据库中存在多条记录,其中某些字段值相同,其他字段值不同.实际的业务需要针对这样的情况,只保留一条数据,其他数据删除.如何做到呢?在sql中有top关键字相对容 ...
- Ubuntu下访问SSH
ssh程序分为有客户端程序openssh-client和服务端程序openssh-server.如果需要ssh登陆到别的电脑,需要安装openssh-client,该程序ubuntu是默认安装的.而如 ...