MVC的衍生物、MVP

MVP(Model View Presenter)模式是众所周知的MVC(模型视图控制器)的衍生物,现在一段时间以来,Android应用程序的开发越来越重要。有越来越多的人谈论它,但是很少有可靠和结构化的信息。这就是为什么我想使用这个博客来讨论,并把我们所有的知识应用到我们的项目最好的方式。什么是MVP?MVP模式允许将表示层与逻辑分开,以便所有关于界面如何工作的内容与我们在屏幕上的表_mvc的衍生产物
分类: 其他 发布时间: 08-15 10:39 阅读次数: 0

Retrofit的简单介绍

一、什么是Retrofit?Retrofit,官方对他的描述是“一个类型安全的Android和java网络请求的客户端”,其实就是一个封装好的网络请求库。首先,在网上找一个API接口用于测试:https://so.iqiyi.com/so/q_吐槽大会?source=input&sr=1456190233864这是一个在爱奇艺搜索一个词详细信息的请求接口。我们假设他返回{da..._retrofit k
分类: 其他 发布时间: 08-15 10:39 阅读次数: 0

动态最大连续子段和 [线段树]

一般涉及操作:单点修改,区间查询最大连续子段和线段树维护最大子段和的具体思路:①线段树需要维护的是:_1.[x,y]内的最大子段和 ms_2.[x,y]的区间和 s_3.[x,y]内的紧靠左端点的最大子段和 ls_4.[x,y]内的紧靠右端点的最大子段和 rs②维护方法:ls有两种情况:_1.左儿子的ls_2.左儿子的s+右儿子的 ls同理,rs有两种情况:_1.右..._动态最大连续子段和
分类: 其他 发布时间: 08-15 10:39 阅读次数: 0

折半搜索 [meet in the middle]

目录LearningPractice[洛谷 4799] 世界冰球锦标赛Learning在使用搜索的时候,当n过大2n会超时,这时候可以用折半搜索,把时间复杂度降低到2n/2+1具体方法:分别搜索前一半,把状态放入a数组,搜索后一半,把状态放入b数组,最后统计答案。一般meet in the middle的难点主要在于最后答案的组合统计。我们可以现将a或b数组sort,让其有序。然后通..._meetin the middle 折半搜索
分类: 其他 发布时间: 08-15 10:38 阅读次数: 0

[SDOI 2011] 染色 //树链剖分

题目链接给定一颗有n个节点的无根树和m个操作,操作有2类:1.将节点a到节点b路径上的所有点都染成颜色a;2.询问节点a到节点b路径上的颜色段数量(连续相同颜色被认为是同一段),如“112221”由3段组成:“11”、“222”、“1”。...
分类: 其他 发布时间: 08-15 10:38 阅读次数: 0

[2020牛客寒假第四场C题] 最大连续子段乘积 //线段树/乘法逆元

目录ProblemSolutions1.线段树2.乘法逆元Problem2020牛客寒假训练赛第四场C题-链接题意:给定n(<=2e5)的序列和k,求长度为 k 的连续子段的乘积对 998244353 取模余数的最大值Solutions1.线段树思路:线段树维护区间乘积,枚举起点查询[i,i+k-1]的乘积更新最大值#include<iostream>#..._python子段乘积
分类: 其他 发布时间: 08-15 10:38 阅读次数: 0

[Codeforces 66C] Petya and File System //字符串暴力+map/建树dfs

题目链接题意:给不定行字符串代表文件目录,diskName:\\folder1\\folder2…\\ foldern\\fileName.xxx,(n>=1),每行字符串建立一个文件。磁盘不算文件夹,求文件夹中直接或简介包含的子文件夹的最大数量,和文件夹中直接或间接包含的最大文件数。思路:..._c - petya and file system codeforces - 66
分类: 其他 发布时间: 08-15 10:38 阅读次数: 0

[Codeforces 1311F] Moving Points //离散化+树状数组

题目链接题意:给n(<=2e5)个点,每个点一个初始位置xi(各不相同)和速度vi,(-1e8<=xi,vi<=1e8),d(i,j)定义为i点与j点在所有时刻的最小距离(从0开始的任意时刻,可以不为整数)。求∑1≤i<j≤n d(i,j)思路:令xi>xj,如下所以可以按xi从大到小排序使xi>xi+1,把vi离散化。以vi为下标、xi和点的数量为值放...
分类: 其他 发布时间: 08-15 10:38 阅读次数: 0

[Codeforces 1312D] Count the Arrays //组合数学

题目链接题意:给定n和m,计算符合如下条件的数组个数对998244353取模,1.含有n个元素2.每个元素从1到m3.存在位置k,从1到k严格递增,从k到n严格递减4.有且仅有一对相等的数思路:#include<bits/stdc++.h>using namespace std;typedef long long ll;const ll p=99824435...
分类: 其他 发布时间: 08-15 10:38 阅读次数: 0

[Codeforces 680D] Bear and Tower of Cubes //贪心+map暴力

题目链接题意:思路:#include<bits/stdc++.h>using namespace std;typedef long long ll;typedef map<ll,int>::iterator IT;ll m,ans1,ans2,ans2_,now;map<ll,int>mp;int cnt;ll solve1(ll m..._codeforces bear and tower of cubes
分类: 其他 发布时间: 08-15 10:38 阅读次数: 0

[Codeforces 635E] Package Delivery //贪心+栈

题目连接题意:终点d(<=1e9),中间有m(<=2e5)个加油站,每个加油站一个xi,pi分别表示坐标和单位油价,邮箱容量为n(<=1e9),起初位于位置0,油箱是满的。问到达d点的最小花费,若不能到达输出-1。思路:①若当前位置 i 加满油能到达后面第一个油价pj<=pi 的加油站,就加到刚好能到达加油站 j 的油量,然后到位置 j。②否则,即后面能到达的加..._codeforces 635e
分类: 其他 发布时间: 08-15 10:38 阅读次数: 0

[Codeforces 336D] Vasily the Bear and Beautiful Strings //组合数学

题目连接题意:定义modification操作为取string(长度>=2)的最后两个字符,如果为(01,10,11)则将这两个字符变为0;如果为00,则将其变为1。给定n,m,g [0<=n,m<=1e5,0<=g<=1]问有多少个不同的string,符合以下条件:①string中有n个0,m个1②string经过任意次modification操作后,s...
分类: 其他 发布时间: 08-15 10:38 阅读次数: 0

[2019icpc台北-新竹站 现场复现赛 Problem A] Rush Hour Puzzle //bfs

题目链接题意:思路://写过的最长的bfs [汗.jpg]#include<bits/stdc++.h>using namespace std;int a_[7][7],ans=11,cnt=1,c,sum;struct node{ int len; int u,pos,s,t; //u=1行,u=0列 node(){u=-1;s=7;}}v[20..._rush hour puzzle
分类: 其他 发布时间: 08-15 10:38 阅读次数: 0

[Daily] 20200508

日期2020050820200508C题题解:题目链接复杂版:b[1]肯定是要放入某个位置的,放到某个位置之后,按照a数组的特定顺序分别向前逆打分、向后正打分,就会得到特定的按照a数组打每个分后应该公布的每个分值(设其为数组B),这时候如果b数组中的每个值在B数组中都存在,我们前面放置b[1]的这种方案就合法,这时向前逆打分过程中求出来的最初分值就是一个合法的最初分值。(逆打分的意思就是还原打分前的情况,即依次-a[i]。正打分就是继续打分,即依次+a[i])所以做法就是枚举b[1]可以放的
分类: 其他 发布时间: 08-15 10:38 阅读次数: 0

[Daily] 20200512

文章目录C.String ReconstructioC.String Reconstructio题目链接思路:线段树。用线段树维护区间[l…r]中元素是否已全部染色,对每个ti的所有[xi, xi+|ti|-1]调用线段树的updata染色,并打上标记已染色,遇到已染色的就不继续往下走,这样因为每个位置只染色一次,所以时间复杂度为O(LlogL),(L为答案字符串长度上限,|ti|为ti的长度)。同时更新(xi+|ti|-1)max得到答案字符串的长度L,最后输出[1…L]的染色序列,若某个位置未染
分类: 其他 发布时间: 08-15 10:38 阅读次数: 0

[Daily] 20200523

文章目录C题.[Codeforces 330C] PurificationD题.[codeforces 330D] Biridian ForestC题.[Codeforces 330C] Purification思路: 看这个样例5EE.EEE.EE.E…E.EE.EEE.EE不难看出如果有解,要么每行都有一个点(随意哪个列上的点都行),要么每列都有一个点,否则无解。所以判断并任意输出一种方案或无解。//AC代码#include<bits/stdc++.h>using
分类: 其他 发布时间: 08-15 10:38 阅读次数: 0

[Daily] 20200601

文章目录C题.[Codeforces 1038C] GamblingD题.[Codeforces 1038C] SlimeC题.[Codeforces 1038C] Gambling思路: 按照题意模拟,用两个大根堆存a和b数组。player A的决策:①若a堆空,则删b堆中的最大值②若b堆空,则取a堆中的最大值③若a堆和b堆都未空-----若a中最大值大于b中最大值,取a堆中的最大值-----若a中最大值小于b中最大值,删b堆中的最大值player B的决策:就是把上面的a,b交换最_anacron[26137]: job `cron.daily terminated jun 15 03:07:01 dc3-26 anacron[2
分类: 其他 发布时间: 08-15 10:38 阅读次数: 0

[Daily] 20200710

文章目录B题.[Codeforces 53B] Little FrogB题.[Codeforces 53B] Little Frog题目链接思路: 枚举题目中要求的2x第一次枚举高=2x(0<=x<=30) ,若w>=floor(2x/0.8), 则H取2x, W取floor(2x/0.8);若floor(2x/0.8)>w>=ceil(2x/1.25), 则H取2x, W取w;否则无法按要求比例裁剪。第二次枚举宽=2x(0<=x<=30) ,若h&gt_[codeforces 53b] little frog
分类: 其他 发布时间: 08-15 10:38 阅读次数: 0

[Daily] 20200814

文章目录C题.[Codeforces 146C] Lucky ConversionD题.[Codeforces 146D] Lucky Number 2C题.[Codeforces 146C] Lucky Conversion题目链接思路: 从a,b串不一样的所有位置 i 里,记录a[i]==4的数量cnt_4,和a[i]==7的数量cnt_7,方案肯定是能交换的交换,最后不能交换的改变。所以ans=min(cnt_4,cnt_7)+(max(cnt_4,cnt_7)-min(cnt_4,cnt
分类: 其他 发布时间: 08-15 10:38 阅读次数: 0

Custome View is not using the 2-or-3-argumentView constructors

今天在自定义一个View的时候遇到一个问题我把自定义的view写到布局下如下所示:结果运行就崩溃,查看了下布局文件才发下报了以下错误导致这个错误的原因是在自定义view的时候没有写它的2个或3个参数的构造方法我只写了它的一个参数的方法public class DrawWalkClockView extends View { private sta_报错custom view view is not using the 2- or 3-argument view constructors; xm
分类: 其他 发布时间: 08-15 10:38 阅读次数: 0