我最近制作了一个程序,需要检查用户输入的数字中的位数.结果我做了以下代码:
int x;
cout << "Enter a number: ";
cin >> x;
x /= 10;
while(x > 0)
{
count++;
x = x/10;
}
Run Code Online (Sandbox Code Playgroud)
据我所知(即使我的经验有限),它看起来粗糙而且相当不优雅.
有没有人知道如何改进这个代码(虽然没有使用内置的c ++函数)?
我想找到并计算我的系统上所有以字符串开头的文件,比如"foo",在bash中只使用一行.
我是bash的新手,所以我想尽可能避免使用脚本 - 我怎么能只使用简单的bash命令来完成这个操作呢?
到目前为止我一直在使用find / -name foo*.这将返回文件列表,但我不知道要添加什么来实际计算文件.
我们发现了一些与感染有关的域名.现在我们在.json文件中有一个DNS名称列表,我想生成一个汇总输出,显示:用户列表,他们访问的唯一域,总计数.如果我也可以计算每个域名的奖励积分.
以下是该文件的示例:
{"machine": "possible_victim01", "domain": "evil.com", "timestamp":1435071870}
{"machine": "possible_victim01", "domain": "evil.com", "timestamp":1435071875}
{"machine": "possible_victim01", "domain": "soevil.com", "timestamp":1435071877}
{"machine": "possible_victim02", "domain": "bad.com", "timestamp":1435071877}
{"machine": "possible_victim03", "domain": "soevil.com", "timestamp":1435071879}
Run Code Online (Sandbox Code Playgroud)
理想情况下,我希望输出类似于:
{"possible_victim01": "total": 3, {"evil.com": 2, "soevil.com": 1}}
{"possible_victim02": "total": 1, {"bad.com": 1}}
{"possible_victim03": "total": 1, {"soevil.com": 1}}
Run Code Online (Sandbox Code Playgroud)
我很乐意接受:
{"possible_victim01": "total": 3, ["evil.com", "soevil.com"]}
{"possible_victim02": "total": 1, ["bad.com"]}
{"possible_victim03": "total": 1, ["soevil.com"]}
Run Code Online (Sandbox Code Playgroud)
我可以获得每个用户的总记录数,但是我丢失了域名列表:
cat sample.json | jq -s 'group_by(.machine) | map({machine:.[0].machine,domain:.[0].domain, count:length}) '
[{"machine": "possible_victim01", "domain": "evil.com", "count": 3},
{"machine": "possible_victim02", "domain": "bad.com", …Run Code Online (Sandbox Code Playgroud) 给定一个int值数组,如何将该系列解析为计数序列表示法?
例子:
{1, 2, 3, 4, 5, 9, 13, 14, 15} -> "1-5,9,13-15"
{4, 6, 8, 10, 11, 12, 15, 17} -> "4,6,8,10-12,15,17"
Run Code Online (Sandbox Code Playgroud)
我正在寻找一种可以产生这些结果的方法.这就是我到目前为止所做的,但我现在非常难过:
测试代码:
import java.util.Arrays;
public class TestSequencing {
public static void main(String[] args) {
int[] numbers1 = {1, 2, 3, 4, 5, 9, 13, 14, 15};
String numbers1s = "1-5,9,13-15";
System.out.println(Arrays.toString(numbers1));
System.out.println("Expected:\t" + numbers1s);
System.out.println("Produced:\t" + sequenceNums(numbers1) + "\n");
int[] numbers2 = {3, 5, 6, 9, 12};
String numbers2s = "3,5-6,9,12";
System.out.println(Arrays.toString(numbers2));
System.out.println("Expected:\t" + numbers2s);
System.out.println("Produced:\t" + …Run Code Online (Sandbox Code Playgroud) 我有关于客户和他们购买的不同产品的数据:
Customer Product
1 A
1 B
1 C
2 D
2 E
2 F
3 A
3 B
3 D
4 A
4 B
Run Code Online (Sandbox Code Playgroud)
我想检查哪些产品在不同客户中同时出现。我想获得不同长度的产品组合的数量。例如,产品组合 A 和 B 一起出现在三个不同的客户身上;产品组 A、B 和 C 出现在一个客户身上。对数据中所有 2 个或更多产品的所有不同集合,依此类推。就像是:
Product Group Number
A, B, C 1
D, E, F 1
A, B, D 1
A, B 3
Run Code Online (Sandbox Code Playgroud)
因此,我正在计算只有产品 A 和 B 的客户(例如客户 4)以及有A 和 B 的客户以及任何其他产品(例如客户 1,他们有 A、B)中的 A、B 组合和 C)。
有没有人有任何想法如何使用 atidyverse或baseR 方法来做到这一点?我觉得这应该是微不足道的 - 也许 …
我有一个想要总结的数据集。首先,我想要主客场比赛的总和,这是我可以做到的。但是,我还想知道每个子类别(主场、客场)中有多少个异常值(定义为超过 300 分)。
如果我没有使用summary,我知道dplyr有这个count()功能,但我希望这个解决方案出现在我的summarize()通话中。这是我所拥有的和我尝试过的但未能执行的内容:
#Test data
library(dplyr)
test <- tibble(score = c(100, 150, 200, 301, 150, 345, 102, 131),
location = c("home", "away", "home", "away", "home", "away", "home", "away"),
more_than_300 = c(FALSE, FALSE, FALSE, TRUE, FALSE, TRUE, FALSE, FALSE))
#attempt 1, count rows that match a criteria
test %>%
group_by(location) %>%
summarize(total_score = sum(score),
n_outliers = nrow(.[more_than_300 == FALSE]))
Run Code Online (Sandbox Code Playgroud) 我需要检测螺旋形弹簧并计算其线圈圈数.
我试过如下:
Image<Bgr, Byte> ProcessImage(Image<Bgr, Byte> img)
{
Image<Bgr, Byte> imgClone = new Image<Bgr,byte>( img.Width, img.Height);
imgClone = img.Clone();
Bgr bgrRed = new Bgr(System.Drawing.Color.Red);
#region Algorithm 1
imgClone.PyrUp();
imgClone.PyrDown();
imgClone.PyrUp();
imgClone.PyrDown();
imgClone.PyrUp();
imgClone.PyrDown();
imgClone._EqualizeHist();
imgClone._Dilate(20);
imgClone._EqualizeHist();
imgClone._Erode(10);
imgClone.PyrUp();
imgClone.PyrDown();
imgClone.PyrUp();
imgClone.PyrDown();
imgClone.PyrUp();
imgClone.PyrDown();
imgClone._EqualizeHist();
imgClone._Dilate(20);
imgClone._EqualizeHist();
imgClone._Erode(10);
Image<Gray, Byte> imgCloneGray = new Image<Gray, byte>(imgClone.Width, imgClone.Height);
CvInvoke.cvCvtColor(imgClone, imgCloneGray, Emgu.CV.CvEnum.COLOR_CONVERSION.CV_BGR2GRAY);
imgCloneGray = imgCloneGray.Canny(c_thresh, c_threshLink);//, (int)c_threshSize);
Contour<System.Drawing.Point> pts = imgCloneGray.FindContours(Emgu.CV.CvEnum.CHAIN_APPROX_METHOD.CV_CHAIN_APPROX_SIMPLE, Emgu.CV.CvEnum.RETR_TYPE.CV_RETR_EXTERNAL);
CvInvoke.cvCvtColor(imgCloneGray, imgCloneYcc, Emgu.CV.CvEnum.COLOR_CONVERSION.CV_GRAY2BGR);
if (null != pts)
{
imgClone.Draw(pts, bgrRed, 2);
imgClone.Draw(pts.BoundingRectangle, …Run Code Online (Sandbox Code Playgroud) int count(string s){
if(s == "")
return 0;
if(s.length == 1)
return 1;
return 1 + count() //This is what I can't figure out. How to traverse the string.
//I just need a hint, not a full on answer.
}
Run Code Online (Sandbox Code Playgroud)
我不知道如何遍历一个字符串.
所以我有一个这样的df:
NAME TRY SCORE
Bob 1st 3
Sue 1st 7
Tom 1st 3
Max 1st 8
Jay 1st 4
Mel 1st 7
Bob 2nd 4
Sue 2nd 2
Tom 2nd 6
Max 2nd 4
Jay 2nd 7
Mel 2nd 8
Bob 3rd 3
Sue 3rd 5
Tom 3rd 6
Max 3rd 3
Jay 3rd 4
Mel 3rd 6
Run Code Online (Sandbox Code Playgroud)
我想算一下每个人得分超过5的haw mant时间?
进入一个看起来像这样的新df2:
NAME COUNT
Bob 0
Sue 1
Tom 2
Mary 1
Jay 1
Mel 3
Run Code Online (Sandbox Code Playgroud)
我的尝试很多 - 这是最新的
df2 = …Run Code Online (Sandbox Code Playgroud) 让我们假设数据帧df为:
df.show()
Run Code Online (Sandbox Code Playgroud)
输出:
+------+----------------+
|letter| list_of_numbers|
+------+----------------+
| A| [3, 1, 2, 3]|
| B| [1, 2, 1, 1]|
+------+----------------+
Run Code Online (Sandbox Code Playgroud)
我想要做的是对countcolumn 中特定元素的编号list_of_numbers。像这样的东西:
+------+----------------+----+
|letter| list_of_numbers|ones|
+------+----------------+----+
| A| [3, 1, 2, 3]| 1|
| B| [1, 2, 1, 1]| 3|
+------+----------------+----+
Run Code Online (Sandbox Code Playgroud)
到目前为止,我已经尝试过创建udf并且它完美地工作,但我想知道我是否可以在不定义任何udf.