这个表达是什么意思?
What is the meaning of this expression?
在topcoder上有一篇离散的二进制搜索文章,我遇到了这个表达式。
while(lo & lt; hi )
if(i + j & lt ; = x )
如下所述
我从未见过这种表达方式";"在一段时间循环并使用 & 在其中。
而且,一般来说,我想知道AND &
位运算符是做什么的(我知道它在二进制级别是如何工作的,但我想知道如何在不将数字转换为二进制形式的情况下计算最终结果(以及下面的代码中的 if 语句。
int getMostWork(vector folders, int workers) {
int n = folders.size();
int lo = * max_element(folders.begin(), folders.end());
int hi = accumulate(folders.begin(), folders.end(), 0);
while (lo & lt; hi) {
int x = lo + (hi - lo) / 2;
int required = 1, current_load = 0;
for (int i = 0; i & lt; n; ++i) {
if (current_load + folders[i] & lt; = x) {
// the current worker can handle it
current_load += folders[i];
} else {
// assign next worker
++required;
current_load = folders[i];
}
}
if (required & lt; = workers)
hi = x;
else
lo = x + 1;
}
return lo;
}
这只是"<"小于运算符的HTML格式错误,无论您在哪里找到此代码
<
的HTML代码是<
将所有<
序列替换为<
,您将获得:
while (lo < hi) {
int x = lo + (hi - lo) / 2;
int required = 1, current_load = 0;
for (int i = 0; i < n; ++i) {
if (current_load + folders[i] <= x) {
// the current worker can handle it
current_load += folders[i];
}
else {
// assign next worker
++required;
current_load = folders[i];
}
}
if (required <= workers)
hi = x;
else
lo = x + 1;
}
没有按位 AND 运算符,只小于条件
相关文章:
- 这个语法std::class<>{}(arg1, arg2) 在C++中是什么意思?
- 标准 N3337 5.2.10 第 7 条中的C++"类型"是什么意思?
- "类模板示例<int>;"语句对 C++11 是什么意思?
- 线应该是什么意思
- "CID"在AT+HTTPPARA= "CID" ,1中是什么意思
- 表达式"b=(b-x)&x"是什么意思?
- 这个表达是什么意思?
- 此代码验证公式是什么意思?
- 跟踪日志中的T.11803()是什么意思?
- 这个额外的关键字在这个 c++ 类声明中是什么意思?
- * 和 ** 在 C++ 函数声明中是什么意思?
- _T("xyz")是什么意思?
- #define Dbg(fmt,..) (0) 是什么意思? 警告:表达式无效
- 这行代码到底是什么意思?
- 当我们说在执行程序时将操作系统的控制权传递给main()函数时,我们的意思是什么
- 这句话在c++中的意思是什么
- 这个typedef的意思是什么
- 这句话的意思是什么
- 意思是什么
- 这个句法的意思是什么?