基于可视化的恶意代码检测
特征提取,操作码和二进制字节流是关键
恶意代码可视化方法
图像特征提取
分类器设计
1001 A+B Format


1006 Sign In and Sign Out


1008 Elevator


1011 World Cup Betting


1020 Tree Traversals

中序遍历的结果和后序遍历的结果可以确定一颗二叉树
#include<iostream>
using namespace std;
int main()
{
int num;
scanf("%d",&num);
int count=0;
while(num!=1)
{
if (num%2==0)
num=num/2;
else
{
num=(3*num+1)/2;
}
count++;
}
printf("%d",count);
}
1002 写出这个数
#include<bits/stdc++.h>
#include<cstdio>
#include<string.h>
using namespace std;
int main()
{
int n, sum = 0, i = 0, s[10];
char number[101];
cin.getline(number,120);
n = strlen(number);
for(; n > 0; n--)
{
sum += number[n-1]-48;
}
while(sum)
{
s[i] = sum % 10;
sum/=10;
i++;
}
for(; i > 0; i--)
{
switch(s[i-1])
{
case 1:
printf("yi");
break;
case 2:
printf("er");
break;
case 3:
printf("san");
break;
case 4:
printf("si");
break;
case 5:
printf("wu");
break;
case 6:
printf("liu");
break;
case 7:
printf("qi");
break;
case 8:
printf("ba");
break;
case 9:
printf("jiu");
break;
case 0:
printf("ling");
break;
}
if(i-1 != 0)
printf(" ");
}
return 0;
}
1003 我要通过!
1004 成绩排名
#include<iostream>
using namespace std;
struct student
{
char name[12];
char id[12];
int grade;
};
int main()
{
int nums;
scanf("%d",&nums);
struct student stu[nums];
for(int i=0;i<nums;i++)
{
scanf("%s %s %d",stu[i].name,stu[i].id,&stu[i].grade);
}
int max=stu[0].grade,min=stu[0].grade;
for(int j=0;j<nums;j++)
{
if (max<stu[j].grade)
{
max=stu[j].grade;
}
if(min>stu[j].grade)
{
min=stu[j].grade;
}
}
for(int x=0;x<nums;x++)
{
if (stu[x].grade==max)
{
printf("%s %s\n",stu[x].name,stu[x].id);
}
}
for(int y=0;y<nums;y++)
{
if (stu[y].grade==min)
{
printf("%s %s",stu[y].name,stu[y].id);
}
}
}
1006 换个格式输出整数

#include<iostream>
using namespace std;
int main()
{
int n;
int t;
int h;
int a;
scanf("%d",&n);
t=n/100;
h=n/10%10;
a=n%10;
for(int i=0;i<t;i++)
{
printf("B");
}
for(int i=0;i<h;i++)
{
printf("S");
}
for(int i=1;i<=a;i++)
{
printf("%d",i);
}
}