#26722: [Python]玩得徹底,你知道float.is_integer()嗎?more_itertools.grouper呢?


406490150@gms.tku.edu.tw (我是朱朱)

學校 : 國立交通大學
編號 : 139794
來源 : [140.113.236.122]
最後登入時間 :
2022-09-03 11:13:16
d671. 11716 - Digital Fortress -- UVa11716 | From: [1.172.227.80] | 發表日期 : 2021-08-21 18:14

首先,判斷是不是完全平方數有很多方法,例如開根號取整數的平方等於自己,int(sqrt(x)) == x

其實float裡面有一個方法叫做is_integer(),於是你可以確認sqrt(x).is_integer()是True的話,就會是完全平方數了~

____________________________________________________________________________________________

如果去看itertools的官方文件,網頁最下面有一個好玩的東西叫做grouper

 

def grouper(iterable, n, fillvalue=None):
    "Collect data into fixed-length chunks or blocks"
    # grouper('ABCDEFG', 3, 'x') --> ABC DEF Gxx"
    args = [iter(iterable)] * n
    return zip_longest(*args, fillvalue=fillvalue)

 

構造很簡單,這個程式片段能夠把一行的東西變成你想要chunck(噎到)多少個、類似buffer的功能。

應用到這題可以怎麼玩呢?zip(*[iter(word)]*N),這兩個星號的意思不同,會先做乘法,之後才會解構。

得到的結果就會是題目所謂的row major。

_______________________________________________________________________________________________

如果要改成column major,其實與轉置矩陣(transpose)有點像,python的zip就有這樣的功能在!

於是把上面的東西組合進來  zip(      *zip(*[iter(word)]*N])      )   就得到column major了耶,酷吧?wwwwww

 
#26723: Re:[Python]玩得徹底,你知道float.is_integer()嗎?more_itertools.grouper呢?


406490150@gms.tku.edu.tw (我是朱朱)

學校 : 國立交通大學
編號 : 139794
來源 : [140.113.236.122]
最後登入時間 :
2022-09-03 11:13:16
d671. 11716 - Digital Fortress -- UVa11716 | From: [1.172.227.80] | 發表日期 : 2021-08-21 18:25

chunk打錯意思了,糟糕ww

part of something, especially a large part
一部分;(尤指)大部分,一大塊
a chunk of text一大段文字
substantial chunk of our profits我們利潤的很大一部分
Three hours is quite a chunk out of my working day.三個小時佔了我一個工作日中相當長的時間。
 
_____________________________________________
 
choke才是噎到、堵住
If you choke, or if something chokes you, you stop breathing because something is blocking your throat.
(使)窒息;(使)哽噎;(使)呼吸困難
She choked to death on a fish bone.她被魚刺骾住後窒息而死。
Children can choke on peanuts.小孩子吃花生會噎住的。
Peanuts can choke a small child.花生會噎住小孩。
to fill something such as a road or pipe, so that nothing can pass through
堵塞,阻塞;塞滿
At lunchtime the streets were choked with traffic.午餐時大街上塞車了。
 
 
ZeroJudge Forum