小编con*_*ard的帖子

线性化嵌套 for 循环

我正在研究一些繁重的算法,现在我正在尝试使其成为多线程。它有一个带有 2 个嵌套循环的循环:

for (int i = 0; i < n; ++i) {
    for (int j = i + 1; j < n; ++j) {
        for (int k = j + 1; k < n; ++k) {
            function(i, j, k);
        }
    }
}
Run Code Online (Sandbox Code Playgroud)

我知道,调用次数function将等于

但我还有最后一个问题:我不知道如何计算ij并且k基于b( 0 <= b < binom(n, 3))

for (int b = start; b < end; ++b) {
    // how to calculate i, j, k?
} …
Run Code Online (Sandbox Code Playgroud)

c++ math multithreading

10
推荐指数
1
解决办法
754
查看次数

无法添加窗口 - 窗口类型2003的权限被拒绝

尝试向WindowManager添加内容时遇到了问题.什么是最有趣的,如果你通过另一个编译器(AIDE)编译,那么一切正常.我现在正在使用Android工作室.以下是代码:

params = new WindowManager.LayoutParams(
                WindowManager.LayoutParams.WRAP_CONTENT,
                WindowManager.LayoutParams.WRAP_CONTENT,
                WindowManager.LayoutParams.TYPE_PHONE,
                WindowManager.LayoutParams.FLAG_NOT_FOCUSABLE, PixelFormat.TRANSLUCENT);

        params.gravity = Gravity.TOP|Gravity.LEFT;
        params.x = 0;
        params.y = y - barHeight;

        windowManager.addView(nb, params); // error there
Run Code Online (Sandbox Code Playgroud)

AndroidManifest:

<uses-permission android:name="android.permission.BIND_ACCESSIBILITY_SERVICE" />
<uses-permission android:name="android.permission.SYSTEM_ALERT_WINDOW"/>
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" />
<uses-permission android:name="android.permission.INTERNET" />
Run Code Online (Sandbox Code Playgroud)

错误信息:

java.lang.RuntimeException: Unable to create service priv.congard.ozonehd4k.controlpanel.NavigationBarService: android.view.WindowManager$BadTokenException: Unable to add window android.view.ViewRootImpl$W@a8744a7 -- permission denied for window type 2003
                                                                                         at android.app.ActivityThread.handleCreateService(ActivityThread.java:3226)
                                                                                         at android.app.ActivityThread.-wrap5(ActivityThread.java)
                                                                                         at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1586)
                                                                                         at android.os.Handler.dispatchMessage(Handler.java:102)
                                                                                         at android.os.Looper.loop(Looper.java:154)
                                                                                         at android.app.ActivityThread.main(ActivityThread.java:6186)
                                                                                         at java.lang.reflect.Method.invoke(Native Method)
                                                                                         at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:889)
                                                                                         at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:779)
                                                                                      Caused by: android.view.WindowManager$BadTokenException: …
Run Code Online (Sandbox Code Playgroud)

android android-windowmanager

7
推荐指数
0
解决办法
2663
查看次数