Codeforces Round #277 (Div. 2) 解题报告_html/css_WEB-ITnose

php中文网
发布: 2016-06-24 11:54:16
原创
1351人浏览过

只会做3道。。tut。。

A题:Calculating Function

水。每两项为1.对奇偶性分类讨论。

代码如下:

立即学习前端免费学习笔记(深入)”;

#include <iostream>#include <cstdio>#include <string>#include <cstring>#include <stdlib.h>#include <math.h>#include <ctype.h>#include <queue>#include <map>#include <set>#include <algorithm>using namespace std;#define LL __int64const int INF=0x3f3f3f3f;int main(){    LL n, x;    scanf("%I64d",&n);    x=n/2;    if(n&1)        printf("%I64d\n",x-n);        else            printf("%I64d\n",x);    return 0;}
登录后复制

B题:OR in Matrix

立即学习前端免费学习笔记(深入)”;

水。

把必须为0的填上,然后判断1的是否符合条件。若符合,让剩下的全为1输出,不符合就输出no。

代码如下:

猫眼课题宝
猫眼课题宝

5分钟定创新选题,3步生成高质量标书!

猫眼课题宝 85
查看详情 猫眼课题宝
#include <iostream>#include <cstdio>#include <string>#include <cstring>#include <stdlib.h>#include <math.h>#include <ctype.h>#include <queue>#include <map>#include <set>#include <algorithm>using namespace std;#define LL __int64const int INF=0x3f3f3f3f;int a[110][110], b[110][110];int main(){    int i, j, k, n, m, flag, flag1, flag2;    scanf("%d%d",&n,&m);    for(i=0; i<n; i++)    {        for(j=0; j<m; j++)        {            scanf("%d",&b[i][j]);        }    }    flag=0;    memset(a,0,sizeof(a));    for(i=0; i<n; i++)    {        for(j=0; j<m; j++)        {            if(!b[i][j])            {                for(k=0; k<n; k++)                {                    a[k][j]=1;                }                for(k=0; k<m; k++)                {                    a[i][k]=1;                }            }        }    }    for(i=0; i<n; i++)    {        for(j=0; j<m; j++)        {            if(b[i][j])            {                flag1=flag2=0;                for(k=0;k<n;k++)                {                    if(!a[k][j])                    {                        flag1=1;                        break;                    }                }                for(k=0;k<m;k++)                {                    if(!a[i][k])                    {                        flag2=1;                        break;                    }                }                if(!flag1&&!flag2)                    flag=1;            }        }    }    if(flag)        puts("NO");    else    {        puts("YES");        for(i=0; i<n; i++)        {            for(j=0; j<m; j++)            {                printf("%d ",1-a[i][j]);            }            puts("");        }    }    return 0;}
登录后复制

C题:Palindrome Transformation

立即学习前端免费学习笔记(深入)”;

先找出改变字母需要的步数,只在P所在的那半侧改变。

然后求出较小的移动的步数。累加即可。

代码如下:

立即学习前端免费学习笔记(深入)”;

#include <iostream>#include <cstdio>#include <string>#include <cstring>#include <stdlib.h>#include <math.h>#include <ctype.h>#include <queue>#include <map>#include <set>#include <algorithm>using namespace std;#define LL __int64const int INF=0x3f3f3f3f;char s[110000];int judge(char c1, char c2){    int x;    if(c1>c2) swap(c1,c2);    return min(c2-c1,c1+26-c2);}int main(){    int l, r, len, i, p, sum=0, flag=0;    scanf("%d%d",&len,&p);    p--;    l=len-1;    r=0;    scanf("%s",s);    for(i=0; i<len/2; i++)    {        if(s[i]!=s[len-i-1])        {            sum+=judge(s[i],s[len-i-1]);            if(p<len/2)            {                l=min(l,i);                r=max(r,i);            }            else            {                l=min(l,len-i-1);                r=max(r,len-i-1);            }            flag=1;        }    }    if(!flag)        puts("0");    else    {        if(p-l>r-p)        {            sum+=r-l+abs(r-p);        }        else        {            sum+=r-l+abs(p-l);        }        printf("%d\n",sum);    }    return 0;}
登录后复制


立即学习前端免费学习笔记(深入)”;

HTML速学教程(入门课程)
HTML速学教程(入门课程)

HTML怎么学习?HTML怎么入门?HTML在哪学?HTML怎么学才快?不用担心,这里为大家提供了HTML速学教程(入门课程),有需要的小伙伴保存下载就能学习啦!

下载
来源:php中文网
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn
最新问题
开源免费商场系统广告
热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板
关于我们 免责申明 举报中心 意见反馈 讲师合作 广告合作 最新更新 English
php中文网:公益在线php培训,帮助PHP学习者快速成长!
关注服务号 技术交流群
PHP中文网订阅号
每天精选资源文章推送
PHP中文网APP
随时随地碎片化学习

Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号