小编Big*_*her的帖子

如何优化我的代码,找到所有可能的积分三角形的所有积分中位数的计数<= b <= c <= 100000?

我正在从欧拉项目问题513,积分中位数来解决这个问题:

ABC是一个整数的三角形,边长为a≤b≤c.mc是连接C和AB中点的中位数.F(n)是具有c≤n的这种三角形的数量,其中mc也具有整数长度.F(10)= 3且F(50)= 165.

找到F(100000).

分析:

  1. a <= b <= c <= n == 100000
  2. ABC是一个三角形,所以它应该: abs(a-b) < c < a+b
  3. Mc = sqrt(2 * a^2+ 2 * b^2 - c^2) / 2 维基百科
  4. Mc是整数,所以2 * a^2+ 2 * b^2 - c^2应该是一个完美的正方形,可以被4整除.

码:

#include <stdio.h>
#include <math.h>

#define N 100000
#define MAX(a,b) (((a)>(b))?(a):(b))

void main(){
    unsigned long int count = 0;
    unsigned long int a,b,c;
    double mc;

    for (a = 1; a <= N; a++) …
Run Code Online (Sandbox Code Playgroud)

c algorithm math time-complexity

7
推荐指数
1
解决办法
583
查看次数

Python:Tkinter和乌龟

在这里开始程序员.从如何思考像计算机科学家我得到以下代码:

#!/usr/bin/env python3

import turtle
wn = turtle.Screen()
alex = turtle.Screen()
alex.forward(150)
alex.left(90)
alex.forward(150)
Run Code Online (Sandbox Code Playgroud)

该程序看起来很简单,但我收到以下错误:

ImportError: No module named turtle
Run Code Online (Sandbox Code Playgroud)

经过一些互联网研究,我读到了tkinter包中可以找到的海龟模块.因为我有两个不同的python安装,Python 2.7.3和Python 3.2.3

我在Ubuntu终端中运行了以下命令,希望安装缺少的python模块:

sudo apt-get install python-tk
sudo apt-get install python3.2-tk
Run Code Online (Sandbox Code Playgroud)

它让我无处可去.那么如何为两个版本的python安装缺少的模块?

谢谢!

python module tkinter

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

python中的模糊文本搜索

我想知道是否有任何Python库可以进行模糊文本搜索.例如:

  • 我有三个关键字"letter","stamp""mail".
  • 我想有一个功能来检查这三个单词是否在同一段(或一定距离,一页)内.
  • 另外,这些词必须保持相同的顺序.在这三个单词之间出现其他单词很好.

我试过fuzzywuzzy哪个没能解决我的问题.另一个库Whoosh看起来很强大,但我找不到合适的功能......

python full-text-search fuzzy-search whoosh elasticsearch

6
推荐指数
1
解决办法
2247
查看次数

Kivy 和 Python 线程 - 如何在它们之间获取数据

我在使用 python(threading) 和 kivy 时遇到了一些问题:

这是一些代码:

import kivy
import threading 
import time
from kivy.app import App
from kivy.uix.button import Button

class Thread(threading.Thread):
    def __init__(self):
        threading.Thread.__init__(self)  
        self.counter = 0        
    def run(self):
        while True:
            print "Thread is running "+str(self.counter)
            app.button.text = self.set_button(self.counter)
            app.button.text = str(self.counter)
            time.sleep(0.5)
    def count(self):
        self.counter += 1
        app.button.text = str(self.counter)     
    def set_button(self, value):
        app.button.text = str(value)

class MyApp(App):
    def __init__ (self, thread_object):
        App.__init__(self) 
        self.thread_object = thread_object      
    def callback(self,instance):
        print('The button <%s> is being pressed' % instance.text)
        self.thread_object.count()
    def …
Run Code Online (Sandbox Code Playgroud)

python multithreading kivy

6
推荐指数
1
解决办法
1万
查看次数

阿拉伯语内容复合词中单独字母的宽度

我有阿拉伯语内容,这是单词的复合???????.我想获得给定单词的第一个字母的宽度(这与独立字母的宽度不同?).

我使用的getBoundingClientRect()方法,并试图让宽度,但它给一个独立的字符,而不是化合物中的一个,其是thiner比返回的宽度valuegetBoundingClientRect

在上面的单词中,给出的ض(第一个字母)的宽度getBoundingClientRect()是16.109375,但是该字符是复合的,即可见,如你所见,它被截断.它小于给定值.

我尝试通过减去getBoundingClientRect()前两个字符给出的宽度和第一个字符的宽度来获得第一个字母的EXACT(可见)宽度,这是12px是正确的.

有没有比这更好的方法,以便我可以在任何单词中得到每个字符的确切可见宽度?

javascript jquery arabic

6
推荐指数
1
解决办法
127
查看次数

Code Push打破反应原生的开玩笑测试

我已经为代码推送配置了一个应用程序,除了开玩笑测试之外它运行良好.它无法为此错误呈现应用:

TypeError: Cannot read property 'CheckFrequency' of undefined

  at Object.<anonymous> (app/index.js:7:66)
  at Object.<anonymous> (index.ios.js:5:12)
  at Object.<anonymous> (__tests__/index.ios.js:4:12)
Run Code Online (Sandbox Code Playgroud)

在这一行:

const codePushOptions = { checkFrequency: codePush.CheckFrequency.MANUAL };
Run Code Online (Sandbox Code Playgroud)

测试代码是:

import App from '../index.ios';

it('renders correctly', () => {
  const tree = renderer.create(
      <App />,
  );
});
Run Code Online (Sandbox Code Playgroud)

javascript jsx jestjs react-native react-native-code-push

6
推荐指数
3
解决办法
1246
查看次数

使用Pandas中的列表删除数据框中的行

这是一个关于使用列表过滤pandas数据帧的一般性问题.问题如下:

  • 我有一个df带有列的pandas数据框field
  • 例如,我有一个禁止字段列表 ban_field=['field1','field2','field3']
  • 所有元素都ban_field出现在df.field

目前,要检索没有禁止字段的数据帧,我按以下步骤操作:

for f in ban_field:
    df = df[df.field!=f]
Run Code Online (Sandbox Code Playgroud)

是否有更多的pythonic方式继续进行(在一行?)?

python pandas

5
推荐指数
1
解决办法
2402
查看次数

带xapian引擎的Django-haystack:如果model具有ManyToManyField,则无法执行update_index

将django升级到1.7后,我无法执行管理命令update_index.

Traceback (most recent call last):
  File "/opt/pycharm-3.4.1/helpers/pydev/pydevd.py", line 1733, in <module>
    debugger.run(setup['file'], None, None)
  File "/opt/pycharm-3.4.1/helpers/pydev/pydevd.py", line 1226, in run
    pydev_imports.execfile(file, globals, locals)  # execute the script
  File "/home/tochium/projects/povary/manage.py", line 10, in <module>
    execute_from_command_line(sys.argv)
  File "/home/tochium/projects/povary/local/lib/python2.7/site-packages/django/core/management/__init__.py", line 385, in execute_from_command_line
    utility.execute()
  File "/home/tochium/projects/povary/local/lib/python2.7/site-packages/django/core/management/__init__.py", line 377, in execute
    self.fetch_command(subcommand).run_from_argv(self.argv)
  File "/home/tochium/projects/povary/local/lib/python2.7/site-packages/django/core/management/base.py", line 288, in run_from_argv
    self.execute(*args, **options.__dict__)
  File "/home/tochium/projects/povary/local/lib/python2.7/site-packages/django/core/management/base.py", line 338, in execute
    output = self.handle(*args, **options)
  File "/home/tochium/projects/povary/src/django-haystack/haystack/management/commands/update_index.py", line 184, in handle
    return super(Command, self).handle(*items, **options)
  File "/home/tochium/projects/povary/local/lib/python2.7/site-packages/django/core/management/base.py", line …
Run Code Online (Sandbox Code Playgroud)

django xapian django-haystack

5
推荐指数
1
解决办法
565
查看次数

将 Numpy 数组复制到内存视图

memoryview在一个numpy数组上有一个,并希望使用以下命令将另一个numpy数组的内容复制到其中memoryview

import numpy as np
cimport numpy as np

cdef double[:,::1] test = np.array([[0,1],[2,3]], dtype=np.double)

test[...] = np.array([[4,5],[6,7]], dtype=np.double)
Run Code Online (Sandbox Code Playgroud)

但为什么这是不可能的呢?它让我一直在说

类型错误:只有长度为 1 的数组可以转换为 Python 标量 Blockquote

如果我从 a 复制memoryview到 a memoryview,或者从numpy数组numpy复制到数组,它工作正常,但是如何从numpy数组复制到 a memoryview

numpy cython memoryview

5
推荐指数
1
解决办法
2215
查看次数

限制来自“gcc”的错误消息数量

的误差输出gcc可能变得非常大。当我使用静态断言并且对断言失败后出现的任何消息不感兴趣时​​,这尤其令人烦恼。

是否可以限制报告的错误数量gcc

gcc

5
推荐指数
1
解决办法
543
查看次数