# ☄️CSF程速勁賽 初賽題庫
###### tags: `CSF`
## 202107 CSF程速勁賽 初賽 1-繪製等腰中空三角形


```python=
n=int(input())
for i in range(1,n):
for x in range(n-i):
print(' ',end="")
for y in range(i*2-1):
if y==0 or y==i*2-2:
print('*',end="")
else :
print(" ",end="")
print()
for i in range(n*2-1):
print("*",end="")
print()
```
## 202112 CSF程速勁賽 初賽 1-手工椪糖


```python=
my_list =list(map(str, input("").split()))
for i in my_list:
if(i=='c'):
print(" ___ ",end="")
if(i=='t'):
print(" ",end="")
if(i=='s'):
print(" _____ ",end="")
print()
for i in my_list:
if(i=='c'):
print(" / \ ",end="")
if(i=='t'):
print(" /\ ",end="")
if(i=='s'):
print("| |",end="")
print()
for i in my_list:
if(i=='c'):
print("| |",end="")
if(i=='t'):
print(" / \ ",end="")
if(i=='s'):
print("| |",end="")
print()
for i in my_list:
if(i=='c'):
print(" \___/ ",end="")
if(i=='t'):
print("/____\\",end="")
if(i=='s'):
print("|_____|",end="")
```
## 202205 CSF程速勁賽 初賽 2-小遊戲
1. 設計說明:
阿明正在和他的朋友玩一個拿石頭小遊戲,規則如下:
一開始桌上有一堆石頭,數量爲
在每個回合中,輪到的人將從石頭堆中拿走1到3顆石頭
阿明跟他的朋友輪流拿石頭,阿明先
拿走最後一顆石頭的人就是贏家
假設阿明跟他的朋友都很聰明,使用最佳玩法玩遊戲,請問在石頭數量爲 的情況下,阿明能否贏得遊戲?
如果可以則輸出"win",不行則輸出"lose"

```python=
n=int(input())
if(n%4!=0) : print("win")
else : print("lose")
```
## 202112 CSF程速勁賽 初賽 3-亞崔迪的反攻
1. 題目說明:
在另一個平行宇宙,亞崔迪從瓦肯能的偷襲下存活下來,並且正在策劃一次反擊。
他們帶著新研發的飛彈來報仇,這個飛彈有兩種模式,可以選擇一次射倒一座大樓,或是把所有大樓的某一樓層射穿,但攜帶太多飛彈容易讓他們的進攻被發現。

2. 輸入輸出
輸入說明
第一列:有幾棟大樓 (正整數)
第二列:每一棟大樓各自的高度 (正整數,並以1個空白字元分隔)
輸出說明
輸出最少幾發飛彈可以摧毀所有大樓

```python=
b=int(input())
bs=[eval(x)for x in input().split(' ')]
bs.sort()
ans=b
for i in range(b):
ans=min(ans,bs[i]+b-i-1 )
print(ans)
```
## 202112 CSF程速勁賽 初賽 2-年輕人的第一台ps5
1. 題目說明:
小明想要買ps5,但ps5太搶手,只能在購物網站上抽籤,抽到才有購買資格。他為了增加自己買到的機率,調查了所有想要ps5的人可能會在哪些購物網站上抽籤。
假設每個人中籤的機率相同,而且每個人只能挑一個購物網站參加抽籤,請問小明選擇那個購物網站最有可能買到ps5?
2. 輸入輸出
輸入說明
第一列:有 個競爭者和 個購物網站
第二列:每個購物網站各有幾台ps5
接下來列,代表第 個競爭者有機率選擇的購物網站,假設他們選擇任一購物網站的機率都一樣
輸出說明
小明應該選擇第幾個購物網站,如果有多個購物網站機率相同,輸出排序靠前的那個。

```python=
x,y=map(int,input().split(' '))
ps5=input().split(' ')
competitor=[0.0]*y
for i in range(x):
websites=input().split(' ')
for web in websites:
competitor[int(web)-1]+=(1/len(websites))
ans=[0,0]
for i in range(y):
prob=min(1.0,int(ps5[i])/(competitor[i]+1))
if(prob > ans[0]):
ans =[prob,i]
print(ans[1]+1)
```