include

ACM: HDU 2563 统计问题-DFS+打表

浪子不回头ぞ 提交于 2020-03-06 09:51:32
HDU 2563 统计问题 Time Limit: 1000MS Memory Limit: 32768KB 64bit IO Format: %I64d & %I64u HDU 2563 Description 在一无限大的二维平面中,我们做如下假设: 1、 每次只能移动一格; 2、 不能向后走(假设你的目的地是“向上”,那么你可以向左走,可以向右走,也可以向上走,但是不可以向下走); 3、 走过的格子立即塌陷无法再走第二次; 求走n步不同的方案数(2种走法只要有一步不一样,即被认为是不同的方案)。 Input 首先给出一个正整数C,表示有C组测试数据 接下来的C行,每行包含一个整数n (n<=20),表示要走n步。 Output 请编程输出走n步的不同方案总数; 每组的输出占一行。 Sample Input 2 1 2 Sample Output 3 7 /*/ 中文题,有点类似以前做过的小蜜蜂那题,规定一个方向后只能沿着三个方向去移动了。所以每次移动只有3种方向可以走,而且还要标记是否已经走过这条路,所以思路很清楚直接DFS。但是DFS会TLE,输入的数字在1~20,数据不多,直接打表。 AC代码: /*/ #include"map" #include"cmath" #include"string" #include"cstdio" #include"vector"

Qt 网络编程3 ftp1 使用QNetworkAccessManager

独自空忆成欢 提交于 2020-03-06 09:04:30
FTP(File transfer protocol ,文件传输协议)是一个主要用于浏览远程目录和传输文件的协议。FTP使用两个网络连接,一个用来发送命令,一个用来输出数据。FTP协议有一个状态,并且需要客户端在传输文件之前发送一些命令。FTP客户端建立一个连接,并在整个会话期间一直保持打开。在每个会话期间,可以发生多个传输。 在Qt5中编写FTP应用时,需要使用QNetworkAccessManager等网络访问接口类。实现方式与前面讲到的HTTP应用十分相似,只需在QUrl对象中设置好主机地址、用户名和密码等,然后使用get()、put()等函数完成文件的获取和上传。 myftp.pro,添加network模块 QT += network mainwindow.h #ifndef MAINWINDOW_H #define MAINWINDOW_H #include <QMainWindow> #include <QUrl> class QNetworkReply; class QNetworkAccessManager; class QFile; namespace Ui { class MainWindow; } class MainWindow : public QMainWindow { Q_OBJECT public: explicit MainWindow

Qt之点击PushButton弹出对话框

大憨熊 提交于 2020-03-06 04:24:36
Qt之点击PushButton弹出对话框 概述: 代码示例: .h .cpp 运行效果图: over: 文末一句话: 概述: 在日常项目中会经常遇到点击按钮弹出对话框,今天分享个简单示例; 1.需要包含 #include < QDialog > 头文件 代码示例: .h # ifndef BUTTONCLICKDILOG_H # define BUTTONCLICKDILOG_H # include <QWidget> # include <QDialog> namespace Ui { class ButtonClickDilog ; } class ButtonClickDilog : public QWidget { Q_OBJECT public : explicit ButtonClickDilog ( QWidget * parent = 0 ) ; ~ ButtonClickDilog ( ) ; private slots : void on_pushButton_clicked ( ) ; private : Ui :: ButtonClickDilog * ui ; QDialog m_Dialog ; } ; # endif // BUTTONCLICKDILOG_H .cpp # include "ButtonClickDilog.h" # include

Android源代码分析之Framework的MediaPlayer

≯℡__Kan透↙ 提交于 2020-03-06 02:51:31
在Android中MediaPlayer用来播放音频和视频文件,在这里分析下在Framework层中MediaPlayer是怎样调用的。MediaPlayer的代码位于:./frameworks/base/media/java/android/media/MediaPlayer.java 以下用到的代码是基于Android 4.4 打开后有一个静态代码块是载入库文件的,仅仅要这个类被创建就会载入库。 static { System.loadLibrary("media_jni"); native_init(); } libmedia_jni.so的源码位于:./frameworks/base/media/jni 在jni这个目录中有个makefile文件 Android.mk LOCAL_PATH:= $(call my-dir) include $(CLEAR_VARS) LOCAL_SRC_FILES:= \ android_media_ImageReader.cpp \ android_media_MediaCrypto.cpp \ android_media_MediaCodec.cpp \ android_media_MediaCodecList.cpp \ android_media_MediaDrm.cpp \ android_media_MediaExtractor

VTK007_vtk-可视化管线

本秂侑毒 提交于 2020-03-06 01:39:42
VTK可视化管线: vtk渲染引擎实现图形图像的渲染,通过了很多步骤,在之前的程序中,我们使用了例如vtkCamera、vtkLight、vtkConeSource、vtkPropMapper等,都是与vtk渲染相关,vtk渲染引擎与vtk可视化管线是vtk中非常重要的两个模块。 vtk渲染管线实际上就是用于获取数据,处理数据,在将数据给vtk渲染引擎渲染,最终显示。在vtk中,有很多已有的数据源,例如vtkCylinderSource、vtkEarthSource等,可以直接生成数据,除此之外,还有很多的工具可以读取已知类型的数据,例如vtkSTLReader,vtkDICOMImageReader等。 vtk可视化管线的三个基本要素就是:数据对象,数据处理对象,数据流方向。 下面是vtk体绘制的一个例子: #include <vtkAutoInit.h> VTK_MODULE_INIT(vtkRenderingOpenGL2) VTK_MODULE_INIT(vtkInteractionStyle) VTK_MODULE_INIT(vtkRenderingFreeType) #pragma comment(lib, "vtkalglib-8.1.lib") #pragma comment(lib, "vtkChartsCore-8.1.lib") #pragma comment

VTK008_vtk-数据结构及转换

戏子无情 提交于 2020-03-06 00:01:45
VTK数据结构: vtk可视化管线和渲染引擎是vtk最重要的两部分,具体而言,前者是用于读取数据处理数据,后者则是渲染数据,显示模型,在这之间,离不开vtk的数据结构。 可以认为数据结构是连接vtk可视化管线和vtk渲染引擎的桥梁 。 vtk数据都是vtkDataObject的子类,通常,我们不会直接使用vtkDataObject来实例化一个vtk数据,一般都是通过指定的数据读取类直接读取文件的数据,再通过接口获取读取到的数据,或者通过vtkDataObject的一些常用子类来实例化数据对象。 vtkDataObject: vtkDataObject有非常多的子类,数据类型也有差别,比较常用的vtk数据结构有:vtkPolyData,vtkImageData等。 vtkDataSet: vtkDataSet分为两个部分: 拓扑结构,几何结构 。 拓扑结构是用于描述物体的构成形式,几何结构是用于描述物体的空间位置关系 。 拿vtkPointSet举例:通俗的说,所有的点组成了几何结构,所有的点的连接关系组成了拓扑结构 。 数据集: vtkPolyData,我们使用最多的数据结构,实际上就是只有几何结构,没有拓扑结构的数据集,但是,通常来说,是需要拓扑结构的。如下,添加了vtkCellArray,即指定了顺序,如果去掉pPolyData->SetVerts(pCellArray);

VTK009_vtk-图片图形图像

我与影子孤独终老i 提交于 2020-03-05 23:28:50
图像数据实例: 图像实例 1(绘制图像): #include <iostream> #include <vtkSmartPointer.h> #include <vtkRenderWindow.h> #include <vtkRenderWindowInteractor.h> #include <vtkInteractorStyleTrackballCamera.h> #include <vtkImageActor.h> #include <vtkRenderer.h> #include <vtkCamera.h> #include <vtkTransform.h> #include <vtkProperty.h> #include <vtkImageCanvasSource2D.h> int main(int argc, char* argv[]) { vtkSmartPointer<vtkRenderWindow> m_pRenderWin = vtkRenderWindow::New(); vtkSmartPointer<vtkRenderWindowInteractor> m_pInteractor = vtkRenderWindowInteractor::New(); vtkSmartPointer<vtkInteractorStyleTrackballCamera> m

C语言-多文件编译

限于喜欢 提交于 2020-03-05 23:18:44
1.构造add函数将两个数字进行相加 06main.c #include <stdio.h> #include "06add.h" int main() { int val = add(3, 5); printf("val是%d\n", val); return 0; } 06add.c int add(int val, int val1) { return val + val1; } 06add.h #ifndef __06ADD_H__ #define __06ADD_H__ int add(int, int); #endif //__06ADD_H__ 编译方式 gcc 06main.c 06add.c 2. 编译get函数使得用户从键盘中获得输入,为了不被主函数调用,不在.h文件里做声明 07main.c /* 调用获取主函数 */ #include <stdio.h> #include "07get.h" int main() { get(); printf("获得的数是%d\n", result); return 0; } 07get.c /* 获得一个整数 */ #include <stdio.h> #include "07get.h" static int result = 0; //加上了static其他文件不能使用 int sc(){ int val = 0;

Jungle Roads

限于喜欢 提交于 2020-03-05 21:50:50
最小生成树的两种算法 Prim; # include <stdio.h> # include <string.h> # include <algorithm> using namespace std ; int map [ 121 ] [ 121 ] ; int book [ 121 ] ; int dis [ 121 ] ; int n , inf = 9999999 ; void Prim ( ) { int i , j , u ; memset ( book , 0 , sizeof ( book ) ) ; //printf("%d\n",n); for ( int i = 1 ; i <= n ; i ++ ) { dis [ i ] = map [ 1 ] [ i ] ; // printf("%d\n",dis[i]); } book [ 1 ] = 1 ; int sum = 0 ; for ( int i = 1 ; i <= n ; i ++ ) { int minn = inf ; for ( int j = 0 ; j <= n ; j ++ ) { if ( dis [ j ] < minn && ! book [ j ] ) { minn = dis [ j ] ; u = j ; } } sum + = minn ; book [ u ] = 1 ;

VS2019 下配置 OpenCV4.2.0

最后都变了- 提交于 2020-03-05 18:19:37
转载自 https://www.jianshu.com/p/908551afa8fd?utm_campaign=haruki 宇宙第一的 IDE Microsoft Visual Studio 更新到 2019 之后,给人耳目一新的感觉,但配置 OpenCV 的方法与以前稍有不同,在此记录。 1. 下载 OpenCV 安装包 到 https://opencv.org/releases/ 下载 OpenCV4.2 Windows 版安装包 2. 解压安装包 双击安装包,指定解压目录。 例如:D:\Program Files\C++Library\OpenCV\420 3. 设置环境变量 在桌面图标[此电脑]右键->属性->高级系统设置->环境变量->系统变量(S)->Path->编辑 在系统变量 Path 下新建如下环境变量 D:\Program Files\C++Library\OpenCV\420\opencv\build\x64\vc15\bin 4. 新建 VS C++ 空项目 HelloCV,设置为 Debug x64 模式 5. 添加属性表 依次点击菜单栏 -> 视图 -> 其他窗口 -> 属性管理器,打开属性管理器。 在属性管理器 Debug | x64 添加新项目属性表,命名为“OpenCV420Debug” 6. 编辑“OpenCV420Debug”属性 在