Towify如何快速生成app

概述

Towify是一款对于没有编程基础,然后想要制作app的用户,后续博主会持续更新相关教程。
下载官网:Towify

下载与使用


操作流程类似于PPT与PS,如果大家使用过Axure或者墨刀,那么使用起来就会很简单。

滑动窗口

给定一个大小为 n≤106 的数组。

有一个大小为 k 的滑动窗口,它从数组的最左边移动到最右边。

你只能在窗口中看到 k 个数字。

每次滑动窗口向右移动一个位置。

以下是一个例子:

该数组为 [1 3 -1 -3 5 3 6 7],k 为 3。

窗口位置 最小值 最大值
[1 3 -1] -3 5 3 6 7 -1 3
1 [3 -1 -3] 5 3 6 7 -3 3
1 3 [-1 -3 5] 3 6 7 -3 5
1 3 -1 [-3 5 3] 6 7 -3 5
1 3 -1 -3 [5 3 6] 7 3 6
1 3 -1 -3 5 [3 6 7] 3 7
你的任务是确定滑动窗口位于每个位置时,窗口中的最大值和最小值。

输入格式
输入包含两行。

第一行包含两个整数 n 和 k,分别代表数组长度和滑动窗口的长度。

第二行有 n 个整数,代表数组的具体数值。

同行数据之间用空格隔开。

输出格式
输出包含两个。

第一行输出,从左至右,每个位置滑动窗口中的最小值。

第二行输出,从左至右,每个位置滑动窗口中的最大值。

输入样例:
8 3
1 3 -1 -3 5 3 6 7
输出样例:
-1 -3 -3 -3 3 3
3 3 5 5 6 7

提交代码

C++

#include<iostream>
using namespace std;const int N = 1000010;
int a[N], q[N], hh, tt = -1;int main()
{int n, k;cin >> n >> k;for (int i = 0; i < n; ++ i)    // 这个题要注意的是 q队列里面存放的是位置{scanf ("%d", &a[i]);        // 先求的是最小值if (i - k + 1 > q[hh]) ++hh;  // 如果最小值的位置已经滑出窗口了 然后就// ++ hh代表这个数已经没了while (hh <= tt && a[i] <= a[q[tt]]) -- tt; // 先确保队列里面有数字// 然后如果新来的数字要小于 队列里面的最小值// 那么--tt 就代表当前队列的最小值去掉q[++ tt] = i;  // 把新来的数字放到队列中if (i + 1 >= k) printf ("%d ", a[q[hh]]); // 当前队列的长度已经满足k了// 就可以把对首的元素输出出来}puts("");int hh = 0, tt = -1;for (int i = 0; i < n; ++ i){if (i - k + 1 > q[hh]) ++ hh;while (hh <= tt && a[i] >= a[q[tt]]) -- tt;q[++ tt] = i;if (i + 1 >= k) printf("%d ", a[q[hh]]);}return 0;
}

Java

import java.io.*;public class Main
{final static int N = 1000010;static int [] a = new int [N];static int [] q = new int [N];static int hh = 0, tt = -1;public static void main(String[] args) throws IOException{int n, k;BufferedReader reader = new BufferedReader(new InputStreamReader(System.in));BufferedWriter out = new BufferedWriter(new OutputStreamWriter(System.out));String [] str = reader.readLine().split(" ");n = Integer.parseInt(str[0]);k = Integer.parseInt(str[1]);str = reader.readLine().split(" ");for (int i = 0; i < n; ++ i) a[i] = Integer.parseInt(str[i]);// for (int i = 0; i < n; ++ i)// {//     if (hh <= tt && i - k + 1 > q[hh])  ++ hh;//     while (hh <= tt && a[i] <= a[q[hh]]) -- tt;//     q[++ tt] = i;//     if (i + 1 >= k) out.write(a[q[hh]]+" ");// }for(int i = 0; i < n; i ++){if(hh <= tt && i - q[hh] + 1 > k) hh++;//判断队头是否已经滑出窗口while(hh <= tt && a[q[tt]] >= a[i]) tt--;//出队q[++tt] = i;//入队if(i >= k - 1) out.write(a[q[hh]]+" ");}out.write("\n");hh = 0;tt = -1;// for (int i  = 0; i < n; ++ i)// {//     if (hh <= tt && i - k + 1 > q[hh]) ++ hh;//     while (hh <= tt && a[i] >= a[q[hh]]) -- tt;//     q[++ tt] = i;//     if (i + 1 >= k) out.write(a[q[hh]]+" ");// }for(int i = 0; i < n; i ++){if(hh <= tt && i - q[hh] + 1 > k) hh++;//判断队头是否已经滑出窗口while(hh <= tt && a[q[tt]] <= a[i]) tt--;//出队q[++tt] = i;//入队if(i >= k - 1) out.write(a[q[hh]]+" ");}out.flush();out.close();}
}

Towify如何快速生成app安装教程相关推荐

  1. 快速生成APP的平台

    介绍了国内快速生成APP的平台与自己平台的对比,很有参考价值. 同类网站 安米网 http://www.appbyme.org/ 追信 http://app.zhui.cn/ 简网app工厂 http ...

  2. 最快速的OpenCV安装教程

    最快速的OpenCV安装教程,最简单的安装方式. 先cmd打开命令行输入pip install opencv-python -i https://mirrors.aliyun.com/pypi/sim ...

  3. autocad2016安装教程_CAD插件快速计算面积安装教程及资源链接

    课程概览 CAD计算面积插件,能够在CAD软件中计算标注面积,面积求和,数值求和,统计面积输出到excel,统计面积输出到txt,统计面积在CAD中制表等等,广泛适用于CAD建筑人员使用. 安装教程安 ...

  4. “蚂蚁呀嘿” 特效安卓 IOS 快速生成APP找到了!

    近日在抖音.微博一夜爆火的"蚂蚁呀嘿"晃头特效,很多朋友都在找这款制作软件的教程,这款软件是 Avatarify,这几天在苹果APP Store免费榜上设置超过了微信.拼多多.抖音 ...

  5. 踩坑无数后的最全的charles抓包app安装教程

    一.安装: 1.建议安装使用最新版,官方下载地址 https://www.charlesproxy.com/download 2.安装完成之后,需要破解: 破解方法 打开破解地址:https://ww ...

  6. 如何自己开发App?如何快速生成App?

    互联网电子商务的飞速发展让App的需求也随着火爆起来.如今市面的程序开发人员已经完全无法满足企业发展的需求.高昂的研发费用与开发周期让诸企业望而却步.在如此大环境下免编程的应用制作平台应运而生,让那些 ...

  7. iOS 开发快速生成APP图标

    方式一: App Store上面的良心免费工具App Icon Gear只需要一张1024*1024的原图即可生成一套图标 链接:https://itunes.apple.com/cn/app/app ...

  8. 国内app快速生成平台对比

    这是海恒CEO高鹏写的一篇国内app快速生成平台对比文章,介绍了国内快速生成APP的平台与自己平台的对比,很有参考价值. 同类网站 安米网 http://www.appbyme.org/ 追信 htt ...

  9. 利用免编程应用平台快速制作App

    想要高效简单的做App吗?还在为做App找外包公司吗?免编程应用制作平台的出现,让很多的普通用户都成成为了专业的软件制作者,不仅轻松制作还能节约成本与时间. 衡道云免编程的应用制作平台的出现不仅使开发 ...

最新文章

  1. 公司运作 - 利润率、周转率
  2. iOS获取已安装的app列表(私有库)+ 通过包名打开应用
  3. R3抹掉加载的DLL
  4. 大神们都在用的终端工具,多合一全能终端神器MobaXterm
  5. [Erlang-0003][OTP] Efficiency Guide User's Guide - Common Caveats
  6. 八位图 16位图_了解位图
  7. 趣图:老师讲算法 vs 油管三哥讲算法
  8. 信息奥赛一本通(1180:分数线划定)——插入排序
  9. C#LeetCode刷题之#840-矩阵中的幻方(Magic Squares In Grid)
  10. bash初识,shell的基础语法及基本特性
  11. 使用Vue.js和ASP.NET Core MVC实现CQRS模式
  12. boost::bind with ros topic,ros中subscribe用boost::bind绑定多个参数
  13. 冻结html表格标题列,jQuery实现冻结表头的方法
  14. 深入解读HBase2.0新功能之高可用读Region Replica
  15. matlab从入门到放弃~
  16. CentOS 7 配置花生壳(phddns)自启动
  17. malloc.h头文件和malloc函数详解
  18. 【虚拟化生态平台】虚拟化平台搭建
  19. 7-1 jmu-python-汇率兑换
  20. linux 本地查看服务器图片-2种方式

热门文章

  1. 道翰天琼认知智能为您解密:Rust语言杀疯了!前有谷歌高薪争夺 Rust 人才,Facebook再官宣加入Rust基金会
  2. Android手势下拉抽屉效果
  3. 四氨基钴酞菁[Co(TAPC)],cas203860-42-8,齐岳生物提供定制材料
  4. 宏碁暗影骑士设置u盘启动教程
  5. js将阿拉伯数字翻译成中文的大写数字
  6. 去掉最低工资和最高工资后的工资平均值(Java实现2种算法)
  7. 约8937亿元:台积电创下台湾企业市值最高纪录
  8. Thumbnails框架图片缩略处理
  9. android allapp图标拖动,RecyclerView 拖拽移动,长按小图标拖拽,侧滑删除
  10. 三菱编程软件GX Works2复制粘贴错位