a - dreamoon and ranking collection
大題:找到乙個從1開始連續的陣列。條件是在給出的陣列後,再給你們k個空填補這個陣列,讓這個陣列從1開始到k是連續得,k是最大的。
做法:使用map記錄出現或者沒出現,然後根據x的大小列舉出多少個沒有出現的數,最後得出最大值。
#includeusingnamespace
std;
typedef
long
long
ll;const
int maxn=1e5+10
;int
main()
intans;
for(int i = 1;;i++)
//cout) }
cout
} return0;
}
c - exercising walk
題意:判斷走得步數能不能只在這個四邊形中。
做法:思維題,考慮全部情況就行,如果走的絕對值步數會大於絕對值半徑,那必no,再判斷一下特殊情況,就是位置只有乙個點的時候,也是no,根本走不動。
#includeusingnamespace
std;
typedef
long
long
ll;const
int maxn=1e5+10
;int
main()
else
cout
<<"no"
<}
return0;
}
d - composite coloring
題意:根據1~11個質數,對陣列進行分類。
做法:直接先求出這11個質數,輸入的時候進行判斷是不是第一次,是第一次,顏色加1.
#includeusingnamespace
std;
typedef
long
long
ll;const
int maxn=1e5+10
;bool
is(int
n)int n,a0[1007], a[1007], ans[1007], res[1007
],cnt,k;
intmain()}}
cout
for(int i =1;i<=n;i++)
cout
<<"\n"
;
} return0;
}
e - k-th beautiful string
題意。根據給的長度,和大小輸出乙個字元,包括倆b,其餘都是a;
做法:很簡單的排序,從右往左看,當前b在倒數第二位時,後b只有1中可能,當前b在倒數第三的時候,後b兩種可能。而且是從小到大的順序,就可以的出,這種順序就算1+2+3+4+5+6,我們就判斷一下大小在那個區間就可能的出前b的位置,後b的位置亦然。
#includeusingnamespace
std;
typedef
long
long
ll;const
int maxn=1e5+10
;int t,n, a[1007], ans[1007], res[1007
],k,sum;
intmain()
r=n-r;
k=sum-k;
for(int i =1;i<=n;i++)
cout
<<"\n"
;
} return0;
}
題意:用最少的顏色給乙個圓環邊上的元素塗顏色,不相同的不能吐一樣的顏色。
做法:這樣最大也就3種顏色。
第一種可能是都一樣,都一種顏色。第二種是陣列長度為偶數,直接輸出12121212……,第三種是長度為奇數,但是若,陣列中間有連續的相同的元素,他們兩個可以一樣的顏色,然後接著12121212。第四種就是最後的元素和最開頭的元素相等,只能12121212……3(第三種不成立再用)。
#includeusingnamespace
std;
typedef
long
long
ll;const
int maxn=2e5+10
;int
t,n,k,a[maxn];
intmain()
if(a[0]!=a[n-1]) flag=1
;
if(a[0]==a[n-1]) pos= 0
;
if(flag==0
) cout
<}
else
if(n%2==0
) cout
<}
else
if(tmp==1
) tmp=2
;
else
tmp=1
;
if(i!=0
) cout
<<"";
cout
<}
cout
<}
else
if(flag==1
)
cout
<<"3"
<}
}
} return0;
}
訓練4 習題9
題目 problem description 在每年的校賽裡,所有進入決賽的同學都會獲得一件很漂亮的t shirt。但是每當我們的工作人員把上百件的衣服從商店運回到賽場的時候,卻是非常累的!所以現在他們想要尋找最短的從商店到賽場的路線,你可以幫助他們嗎?input 輸入包括多組資料。每組資料第一行是...
訓練3 習題10
題目 problem description 有一樓梯共m級,剛開始時你在第一級,若每次只能跨上一級或二級,要走上第m級,共有多少種走法?input 輸入資料首先包含乙個整數n,表示測試例項的個數,然後是n行資料,每行包含乙個整數m 1 m 40 表示樓梯的級數。output 對於每個測試例項,請輸...
訓練3 習題16
題目 problem description 在一無限大的二維平面中,我們做如下假設 1 每次只能移動一格 2 不能向後走 假設你的目的地是 向上 那麼你可以向左走,可以向右走,也可以向上走,但是不可以向下走 3 走過的格仔立即塌陷無法再走第二次 求走n步不同的方案數 2種走法只要有一步不一樣,即被...