小编Ada*_*zyk的帖子

这个混淆的C行如何打印"EMIL"?

你能解释下面的代码是如何工作的吗?

main(O){10<putchar(4^--O?77-(15&5128>>4*O):10)&&main(2+O);}
Run Code Online (Sandbox Code Playgroud)

输出:

EMIL
Run Code Online (Sandbox Code Playgroud)

你可以在Ideone上测试它.我在unwind的个人资料中发现了这一行.

c deobfuscation

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

openCV 2.4.7错误添加符号:命令行中缺少DSO

我有一个自编译opencv的问题...

XUbuntu 13.10 x64 gcc版本4.8.1

cmake -D WITH_TBB = ON -D BUILD_NEW_PYTHON_SUPPORT = ON -D WITH_V4L = ON -D INSTALL_C_EXAMPLES = ON -D INSTALL_PYTHON_EXAMPLES = ON -D BUILD_EXAMPLES = ON -D WITH_QT = ON -D WITH_OPENGL = ON -D WITH_OPENMP = ON ..

Everthing看起来很好.简单的例子将是有效的.我的问题是,我想在xubuntu中使用nonfree(SURF)包.

现在我想编译这些示例 http://docs.opencv.org/doc/tutorials/features2d/feature_detection/feature_detection.html 并得到此错误(主题)

g ++ -I/usr/local/include/opencv -I/usr/local/include/opencv2 -O0 -g3 -Wall -c -fmessage-length = 0 -MMD -MP -MF"example.d"-MT"示例.d"-o"example.o""../ example.cpp"完成建筑物:../ example.cpp

构建目标:SURF_Example调用:GCC C++链接器

g ++ -L/usr/local/lib -o"SURF_Example"./ example.o -lopencv_core -lopencv_imgproc -lopencv_highgui -lopencv_objdetect -lopencv_nonfree

libopencv_features2d.so.2.4:添加符号时出错:命令行中缺少DSO

有帮助吗?

c++ linker opencv

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

这个Java for循环在伪代码中应该是什么样的?

我应该如何将这段代码转换为伪代码?

ArrayList<Integer> check = new ArrayList<Integer>();
ArrayList<Integer> dup = new ArrayList <Integer> ();
ArrayList<Integer> nonDup = new ArrayList <Integer> ();

for (int i : listA) {
    nonDup.add(i);
}
for (int i : listB) {
    nonDup.add(i);
}
for (int i : listA) {
    check.add(i);
}
for (int i : listB) {
    if (check.contains(i)) {
        dup.add(i);
        nonDup.removeAll(duplicates);                   
    }
}
Run Code Online (Sandbox Code Playgroud)

我不知道如何将for循环,add(),contains()和removeAll()方法转换为伪代码.

java pseudocode

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

优化Conway在C中的生命游戏的邻居计数功能

在Conway的生命游戏实现中优化返回单元格邻居数量的函数时遇到一些麻烦.我正在努力学习C并且只是在编码方面做得更好.我不是很擅长识别潜在的优化,我花了很多时间在线阅读各种方法,但它并没有真正点击我.

具体来说,我试图弄清楚如何以最有效的方式展开这个嵌套for循环,但每次我尝试我只是让运行时更长.我包括该功能,我认为不需要任何其他上下文.感谢您提出的任何建议!

这是countNeighbors()函数的代码:

static int countNeighbors(board b, int x, int y)
{
   int n = 0;

   int x_left = max(0, x-1);
   int x_right = min(HEIGHT, x+2);
   int y_left = max(0, y-1);
   int y_right = min(WIDTH, y+2);

   int xx, yy;
   for (xx = x_left; xx < x_right; ++xx) {
       for (yy = y_left; yy < y_right; ++yy) {
           n += b[xx][yy];
       }
   }

   return n - b[x][y];
}
Run Code Online (Sandbox Code Playgroud)

c optimization for-loop

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

在bigquery中使用_PARTITIONTIME子查询不会限制成本

当我使用标准 SQL 在 BQ 上运行以下查询时,它表示运行时将处理 76.6TB

SELECT 
event_time, user_id, activity_id,dbm_insertion_order_id, dbm_total_media_cost_usd 
FROM `raw.5295.activity_*`
WHERE _PARTITIONTIME >(SELECT * FROM `analytics-dwh.autobidding.activity_list` )
AND timestamp_micros(event_time)  > (SELECT timestamp_micros(MAX(event_time)) from `essence-analytics-dwh.ml_for_autobidding.nest_na_4q18_activity_updated_daily`)
AND _TABLE_SUFFIX IN ('25','20')
Run Code Online (Sandbox Code Playgroud)

表analytics-dwh.autobidding.activity_list只有一列,其中包含唯一的整数列表

如果我从上表中删除子查询,则该查询在运行时使用的内存将少于 500GB

SELECT 
event_time, user_id, activity_id,dbm_insertion_order_id, dbm_total_media_cost_usd 
FROM `raw.5295.activity_*`
WHERE _PARTITIONTIME >TIMESTAMP('2018-12-20')
AND timestamp_micros(event_time)  > (SELECT timestamp_micros(MAX(event_time)) from `essence-analytics-dwh.ml_for_autobidding.nest_na_4q18_activity_updated_daily`)
AND _TABLE_SUFFIX IN ('25','20')
Run Code Online (Sandbox Code Playgroud)

为什么当我使用子查询时会发生这种情况?有解决方法吗?

subquery google-bigquery

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

如何在android 2.2中实现拖放?

我正在尝试开发一个Android应用程序,用户应该能够将图像从网格的一个单元格拖动到另一个单元格.为了实现这一点,我需要在Android 3.0中引入的拖放API,但我的应用程序应该在Android 2.2中运行.那么,有没有办法使用Touch事件实现这一点?如果是,那么请提供一些代码片段或简要介绍它的任何链接.

android drag-and-drop android-layout

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

String to Number转换中的性能问题

我有空格分隔的字符串,其中包含数字,如:

"abc123 ws32wd3 y3tg43 5tga89 a1a"

我必须解析字符串以获取每个标记的数字,然后总结从标记中提取的所有数字.我写了下面的代码,但我认为,如果有大字符串,那么可能存在性能问题.

所以,我的问题是:

  1. 我们如何在以下代码中提高性能?

  2. 我们是否有另一种方法来编写以下代码来解决问题?

码:

public class TestSum {

    public static int doSum(String str){
        String[] sArray = str.split(" ");
        char[] chr = null;
        String temp;
        String number = "";
        int sum=0;
        for(String s : sArray){
            chr = s.toCharArray();
            for(char c : chr){
                temp = String.valueOf(c);
                if(isNum(temp)){
                    number = number + temp;
                }           
            }
            sum = sum + Integer.parseInt(number);
            number="";
        }       
        return sum;
    }

    public static boolean isNum(String nStr){   
        try{
            Integer.parseInt(nStr);
            return true;
        }catch(NumberFormatException nfe){ …
Run Code Online (Sandbox Code Playgroud)

java string performance

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

从排序列表中获取间隔的最快方法?

让我们说有属性的Elementposition.

public class Element {

   private float position;

   public float getPosition() {
      return position;
   }

   public void setPosition(float position) {
      this.position = position;
   }
}
Run Code Online (Sandbox Code Playgroud)

此外,还有ArrayList<Element> elements随机分配position值的保持元素.然后按位置值对元素进行升序排序.

问题:在一些位置区间内获取所有元素的最快方法是什么<a,b>,然后简单地迭代元素,如下所示:

for (Element element : elements) {
   if (element.getPosition() > a && element.getPosition() < b) {
      // Do something with an element.
   }
}
Run Code Online (Sandbox Code Playgroud)

我假设有一种更快的方法,因为假设列表已经排序.

java algorithm search arraylist

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

编写一个算法来返回一个数组,使得1..n中的每个数字k恰好发生两次,与其副本相距k距离

在一次采访中询问了这个问题.

对于给定的整数n> = 3,返回大小为2n的数组,使得从1到n的每个数字k恰好发生两次,并且每个数字和它的重复以等于该数字的距离分开.

功能签名:

int* buildArray(int n)
Run Code Online (Sandbox Code Playgroud)

例如,对于n = 3:

3, 1, 2, 1, 3, 2
Run Code Online (Sandbox Code Playgroud)

编号2:第一个位置3和第二个位置6,所以距离6 - 3 - 1 = 2.
编号3:第一个3位置1,第二个3位置5,距离5 - 1 - 1 = 3.

对于n = 4:

4, 1, 3, 1, 2, 4, 3, 2
Run Code Online (Sandbox Code Playgroud)

algorithm data-structures

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

解决Dots and Boxes游戏是否可行?

我试图证明可计算性的游戏是Dots和Boxes.

然而,我没有使用定理,而是试图通过创建一个AI,该游戏应该在该游戏中为玩家1或玩家2赢得100%的胜利.如果创造100%的胜利AI是不可能的,那么我的目标是创造一个至少比所有其他AI更好的.截至目前,我正在用PHP编写所有内容,因为我正在与另一个用脚本语言编写的AI竞争.

整个事情是递归的,基本逻辑是:计算所有可能移动的整个树如果是我的AI,那么为AI玩家选择具有最大点数的路线.如果是对手的AI,那么选择我的AI点数最少的路线.Aka计算每个节点的保证点数.

计算完整棵树后,选择保证点数最多的路线.在偶数点,随机挑选.

整个计算过程将大致永远地计算在15x15板上,但是现在我想要的是在3x3矩阵上计算它.我将为数据库中的前6-8个移动存储最佳移动,以便现在必须再次重新计算它们,这将每个计算的复杂性从24改变!到18!

这一切都可行吗?我计算动作的方式有问题吗?有一个更好的方法吗?

artificial-intelligence scripting-language

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