南昌大學航天杯第二屆部分題解

2022-05-16 15:36:10 字數 1255 閱讀 1227

這個比賽的題目考的比較多的都是大數運算,或者unsigned long long 的資料範圍(1e18以內)。

首先是a題,簽到,只不過是加了英文的描述,大意就是多組資料輸入,然後將每組的字串大寫轉小寫,小寫轉大寫,其他的不管。

#include #include 

#include

#include

#include

using

namespace

std;

intmain()

cout

}return0;

}

然後是b題,一道簡單的博弈題,一開始被題意蒙了一下,其實兩堆沒什麼用,就合併成一堆,然後推了一下,就是分下奇偶數,奇數先手必贏,偶數後手必輸。

#include #include 

#include

#include

#include

using

namespace

std;

intmain()

return0;

}

c題,題目描述相對簡單,就是找n個節點的無長度為3的環的簡單無向圖的最多邊

別人很多都是暴力蒐做的,其實可以找規律

即發現沒有長度為3的環的圖就是二分圖,而完全二分圖就是邊數最多的。

引理:n個頂點的圖g=(v,e),假設其頂點的最大度數為m,則邊數最多為m*(n-m)

然後發現,當m=floor(n/2)時,當n是偶數時,最多邊數就是n/2*n/2,奇數時就是((n-1)/2)*((n+1)/2).

#include #include 

#include

#include

#include

using

namespace

std;

intmain()

return0;

}

然後就寫了i題

題意就是給你兩個數(<10^18),然後求這兩數的差值轉換成時間的格式即hh :mm :ss的形式

就是用ull存然後取餘,除就分別算出小時,分鐘和秒就行了

#include #include 

#include

#include

#include

using

namespace

std;

intmain()

return0;

}

南昌大學航天杯第二屆部分題解

這個比賽的題目考的比較多的都是大數運算,或者unsigned long long 的資料範圍 1e18以內 首先是a題,簽到,只不過是加了英文的描述,大意就是多組資料輸入,然後將每組的字串大寫轉小寫,小寫轉大寫,其他的不管。include include include include includ...

南昌大學航天杯第二屆程式設計競賽校賽網路同步賽 D

多組輸入 第一行輸入乙個整數q,代表操作總數 以下q行每行描述了乙個操作,每行以乙個整數t開始 1 t 4 t表示上述問題陳述中定義的操作型別。如果操作需要引數,則後跟空格分隔的引數。題目保證所有操作均合法 1 q 10 6 1 k 記事本內容長度 每個測試資料中str的總長度 10 6 請使用 i...

第二屆藍橋杯 中獎計算

題目 中獎計算 某 活動的規則是 每位參與者在紙上寫下乙個8位數的號碼。最後通過搖獎的辦法隨機產生乙個8位數字。參與者寫下的數字中最多有多少個連續位與開獎號碼中的相同,則稱為中了幾個號。例如 小張寫的數字是 12345678,而開獎號碼是 42347856。則稱小張中了3個號,因為其中最長的相同連續...