# 110 學年度商業類學生技藝競賽模擬題
題目出處:DOMjudge
# pA. 找出比某數⼩的最⼤質數
```python=
for _ in range(int(input())):
n=int(input())
for i in range(n-1,-1,-1):
for j in range(2,int(i**0.5)+1):
if i%j==0:
break
else:
print(i)
break
```
# pB. 給⼀個整數數字,轉為羅⾺數字符號
```python=
num = [
[1000,'M'],
[900,'CM'],
[500,'D'],
[400,'CD'],
[100,'C'],
[90,'XC'],
[50,'L'],
[40,'XL'],
[10,'X'],
[9,'IX'],
[5,'V'],
[4,'IV'],
[1,'I']]
for _ in range(int(input())):
n = int(input())
ans = ''
for i in num:
a = divmod(n, i[0])
if a[0]!=0:
n = a[1]
ans = ans + i[1]*a[0]
print(ans)
```
# pC. 找出最⼤的數字
```python=
for _ in range(int(input())):
print(max([int(i) for i in input().split()]))
```
# pD. 時間計算
```python=
import datetime
for _ in range(int(input())):
N=int(input())
n=datetime.date(1970,1,1)
print(n+datetime.timedelta(days=N))
```
# pE. 幾A幾B
```python=
for _ in range(int(input())):
a,b=input().split(', ')
seen_a=[0 for _ in range(len(a))]
seen_b=[0 for _ in range(len(b))]
ans=[0,0] #0A0B
for i in range(len(a)):
if a[i]==b[i]:
seen_a[i]=1
seen_b[i]=1
ans[0]+=1
for i in range(len(a)):
if not(seen_a[i]):
for j in range(len(b)):
if not(seen_b[j]):
if a[i]==b[j]:
ans[1]+=1
seen_a[i]=1
seen_b[j]=1
print(f'{ans[0]}A{ans[1]}B')
```
# pF. ⻄洋棋
```python=
for _ in range(int(input())):
x1,y1,x2,y2=map(int,input().split())
dx,dy=abs(x1-x2),abs(y1-y2)
if not(dx) and not(dy):
print(0)
elif dx==dy or not(dx) or not(dy):
print(1)
else:
print(2)
```
# pG. 找最⼤
想法:做出節點,找出每個的根節點
```python=
d={}
for _ in range(int(input())):
a,b=input().split('>')
if b not in d:
d[b]=[a]
else:
d[b].append(a)
D={}
def BFS(n,time):
if n not in d or n in seen:
if n not in D:
D[n]=time
else:
D[n]=max(D[n],time)
return
seen.add(n)
for i in d[n]:
BFS(i,time+1)
for i in d:
seen=set()
BFS(i,0)
D=sorted(D)
if len(D)==len(d):
print('None')
else:
print(','.join(D))
```
WA
# pH. 印樓梯
```python=
n=int(input())
space=0
for i in range(n//2+1):
for _ in range(n):
print(' '*space+'*')
if i!=n//2:
print(' '*space+'*'*(n+1))
space+=n
```
WA 通靈題