小编use*_*394的帖子

如何计算模数除法

在找到除法模数时,我被困在一个程序中.

比方说我有:

((a*b*c)/(d*e)) % n
Run Code Online (Sandbox Code Playgroud)

现在,我不能简单地计算表达式然后将其模数为n,因为乘法和除法在循环中进行,并且该值足够大,即使在long long中也不适合.

正如评论中所阐明的那样,n可以被认为是素数.

我发现,对于乘法,我可以很容易地将它计算为:

((a%n*b%n)%n*c%n)%n
Run Code Online (Sandbox Code Playgroud)

但是无法理解如何计算除法部分.

我面临的问题是一个简单的例子:

((7*3*5)/(5*3)) % 11 
Run Code Online (Sandbox Code Playgroud)

上面表达式的值为7

但如果我计算乘法,模数,它将是:

((7%11)*(3%11))%11 = 10
((10%11)*(5%11))%11 = 6
Run Code Online (Sandbox Code Playgroud)

现在我剩下6/15,我无法生成正确的答案.

有人能帮助我吗 请通过上面的例子让我理解逻辑.

c algorithm

3
推荐指数
1
解决办法
1127
查看次数

查找/删除目录中最旧的文件

当文件数达到阈值时,我试图删除目录中最旧的文件。

list_of_files = os.listdir('log')    

if len([name for name in list_of_files]) == 25:
    oldest_file = min(list_of_files, key=os.path.getctime)
    os.remove('log/'+oldest_file)
Run Code Online (Sandbox Code Playgroud)

问题:问题出在 min 方法中。list_of_files 不包含完整路径,因此它尝试在当前目录中搜索文件并失败。如何将目录名称('log')传递给 min()?

python file-io path

2
推荐指数
2
解决办法
8999
查看次数

标签 统计

algorithm ×1

c ×1

file-io ×1

path ×1

python ×1