A题:Calculating Function
水。每两项为1.对奇偶性分类讨论。
代码如下:
#include #include #include #include #include #include #include #include #include #include #include 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。
代码如下:
#include #include #include #include #include #include #include #include #include #include #include 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
C题:Palindrome Transformation
先找出改变字母需要的步数,只在P所在的那半侧改变。
然后求出较小的移动的步数。累加即可。
代码如下:
#include #include #include #include #include #include #include #include #include #include #include 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 r-p) { sum+=r-l+abs(r-p); } else { sum+=r-l+abs(p-l); } printf("%d\n",sum); } return 0;}
查看更多关于CodeforcesRound#277(Div.2)解题报告_html/css_WEB-ITnose的详细内容...
声明:本文来自网络,不代表【好得很程序员自学网】立场,转载请注明出处:http://haodehen.cn/did106226