程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 編程語言 >> C語言 >> C++ >> C++入門知識 >> Codeforces Round #277 (Div. 2) 解題報告

Codeforces Round #277 (Div. 2) 解題報告

編輯:C++入門知識

Codeforces Round #277 (Div. 2) 解題報告


只會做3道。。TUT。。

A題:Calculating Function

水。每兩項為1.對奇偶性分類討論。

代碼如下:

#include 
#include 
#include 
#include 
#include 
#include 
#include 
#include 
#include 
#include 
#include 

using namespace std;
#define LL __int64
const 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 __int64
const 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 __int64
const 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; ir-p)
        {
            sum+=r-l+abs(r-p);
        }
        else
        {
            sum+=r-l+abs(p-l);
        }
        printf("%d\n",sum);
    }
    return 0;
}


  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved