- 博客(40)
- 收藏
- 关注
原创 可变参数
可变参数常用于方法的形式参数个数不确定的情况。其本质上就是一个数组。我们可以很方便地用增强for循环遍历该可变参数。public class test { public static int sum (int... a) { int sum = 0; for (int i : a) { sum += i; } return sum; } public static void main(
2021-04-21 20:38:08 132
原创 冒泡排序
package com.p1.cpq1;/** * * @Description * @author Puiki Email:1115175182@qq.com * @version * @date 2021年1月18日下午5:24:03 * */import java.util.Scanner;public class C1 { public static void main(String[] args) { int[] arr = new int[] { -2, -4
2021-01-29 20:40:43 152
原创 创建一个长度为6的int型数组,要求数组元素的值都在1-30之间,且是随机赋值。同时,要求元素的值各不相同
本题重点就在于:随机赋值,且每个随机值不同如果有复杂度更优的代码欢迎指导package com.p1.cpq1;/** * * @Description * @author Puiki Email:1115175182@qq.com * @version * @date 2021年1月18日下午5:24:03 * */import java.util.Scanner;public class C1 { public static void main(String[] ar
2021-01-28 14:36:01 240
原创 2017年蓝桥杯C++A组省赛题目: A题迷宫
1.标题:迷宫X星球的一处迷宫游乐场建在某个小山坡上。它是由10x10相互连通的小房间组成的。房间的地板上写着一个很大的字母。我们假设玩家是面朝上坡的方向站立,则:L表示走到左边的房间,R表示走到右边的房间,U表示走到上坡方向的房间,D表示走到下坡方向的房间。X星球的居民有点懒,不愿意费力思考。他们更喜欢玩运气类的游戏。这个游戏也是如此!开始的时候,直升机把100名玩家放入一...
2020-03-10 17:00:56 449
原创 拦截导弹:线性DP求最长不上升子序列+贪心
题目:解题思路:第一问:没什么好说的,基础的线性dp求解经典的最少不上升(下降)子序列;第二问:贪心思想。需要n个导弹就想当于把一串数字划分为n个部分,且每个部分都是一段递减的子序列 例如 :6 5 1 7 3 2 需要最少的炮弹–> 6 51//7 3 2 显然划分了两个部分。 如果想让需要的炮弹数最少,就是等价于划分的每个部分的长度最长。使用的小技巧:第二问用了一个 bl...
2020-03-07 18:35:09 240
原创 第十届蓝桥杯C/C++A组省赛题:迷宫:bfs+记录路径
迷宫【问题描述】下图给出了一个迷宫的平面图,其中标记为 1 的为障碍,标记为 0 的为可 以通行的地方。010000000100001001110000迷宫的入口为左上角,出口为右下角,在迷宫中,只能从一个位置走到这 个它的上、下、左、右四个方向之一。 对于上面的迷宫,从入口开始,可以按DRRURRDDDR 的顺序通过迷宫, 一共 10 步。其中 D、U、L、R 分别表示向下、向上、...
2020-03-06 21:30:38 309
原创 迷宫问题 POJ - 3984:BFS,输出路径
题目链接大致思路:BFS从出口反向遍历到起点,用一个fa结构体类型数组记录当前点的下一步坐标;AC代码:#include <stdio.h>#include <iostream>#include <algorithm>#include <queue>#include<string.h>using namespace std...
2020-03-06 16:08:12 223
原创 蓝桥杯基础训练龟兔赛跑预测:模拟题
利用while循环模拟比赛赛跑过程,这种题千万不要想着去推公式题目链接#include<bits/stdc++.h>using namespace std;typedef long long ll;ll v1,v2,t,s,l;ll s1,s2,num;int main(){ cin>>v1>>v2>>t>>s&g...
2020-03-04 14:45:23 350
原创 大数乘,高精度加法的两种实现方法(c++实现)
第一种实现代码简单,对数据有一定限制思路是把乘数与被乘数的每一位相乘代码1:#include<bits/stdc++.h>using namespace std;typedef long long ll;ll a[10000];int main() { ll carry=0; string q; ll p; cin>>p&g...
2020-03-04 00:07:07 210
原创 蓝桥杯基础训练:分解质因数
题目:第一次TLE了TLE代码:#include<bits/stdc++.h>using namespace std;typedef long long ll;bool jg(ll x){ for(ll i=2;i<=sqrt(x);i++) { if(x%i==0) return false; } return tr...
2020-03-03 22:46:10 246
原创 蓝桥杯基础训练-完美的代价:思维模拟题
题目链接解题思路都在下面的AC代码的注释上了,主要是学习这种思维。#include<bits/stdc++.h>using namespace std;typedef long long ll;int main(){ ll n,cnt=0; cin>>n; string v; cin>>v; ll len=v....
2020-03-03 18:34:29 209
原创 大数加法,高精度加法(附带有牛客网例题)
代码模板:#include <bits/stdc++.h>using namespace std;typedef long long ll;#define N 10010ll cnt1,cnt2;//记录两个数的位数string a,b;//字符串输入俩大数ll m[N],n[N];//按位依次将string a,b中的数保存到ll数组a,b中int main(){...
2020-02-28 21:36:10 304
原创 2020牛客寒假算法基础集训营1:nico和niconiconi:基础dp
题目描述“にっこにっこにー” ——niconico平时最喜欢说的口头禅是niconiconi~。有一天nico在逛著名弹幕网站"niconico"的时候惊异的发现,n站上居然有很多她的鬼畜视频。其中有一个名为《让nico为你洗脑》的视频吸引了她的注意。她点进去一看,就被洗脑了:“niconicoh0niconico*^vvniconicoG(vniconiconiconiconic...
2020-02-21 16:08:07 260
原创 2020牛客寒假算法基础集训营1:nozomi和字符串:字符串贪心
题目链接AC代码:#include<bits/stdc++.h>using namespace std;typedef long long ll;#define inf 0x3f3f3f3fvector<ll>v1,v0;int main(){ ll n,k; cin>>n>>k; string s; cin>>s...
2020-02-21 09:03:09 191
原创 2020牛客寒假算法基础集训营1: eli和字符串:尺取法
题目链接解题思路:尺取:要求子串最短,则相同的字母个数必定不能超过k,又因为题目要求至少为k,则相同的字母个数必是k。满足个数为k,则l++;不满足,则r++;直到r遍历到字符串末尾AC代码:#include<bits/stdc++.h>using namespace std;typedef long long ll;#define inf 0x3f3f3f3fma...
2020-02-20 17:52:17 223
原创 POJ-1287:最小生成树入门题Kruskal
题目:You are assigned to design network connections between certain points in a wide area. You are given a set of points in the area, and a set of possible routes for the cables that may connect pairs ...
2020-02-19 15:13:06 289
原创 POJ-1258:最小生成树裸题
题目链接AC代码:#include<string.h>#include<iostream>#include<algorithm>#include<math.h>using namespace std;typedef long long ll;const ll N=105;ll ans,n,fa[N];struct Edge{ ...
2020-02-19 11:34:36 165
原创 POJ - 3660:详细题解分析,Floyd
题目链接**解题思路:**一个Cow如果想确定它的rank,则必须知道该cow与其他所有cow的level关系,比如5个牛,我知道4个牛中,3个牛比我大,1个牛比我小,那么我的rank显然是NO.4.利用Floyd求出可以连通的cow(就是可以确定大小关系),最后遍历一遍,找与该牛可以确定大小关系的个数,为n-1即可确定rank。AC代码:#include <stdio.h>...
2020-02-18 15:48:57 178
原创 POJ-2387:Dijkstra模板题
题目链接AC代码:#include <stdio.h>#include <string.h>#include <string>#include <iostream>#include <stack>#include <queue>#include <vector>using namespace st...
2020-02-17 20:33:28 165
原创 HDU-2200Eddy's AC难题:组合排列问题
题目链接题解:从n个人中选择i个人进行分组,那么i的取值为2到n,每一个i对应的分组方案是i-1,实际上就是把i个人的等级进行排序后然后找一个空位,因为有i-1个空位,所有有i-1种方案,有因为从n个人中选择i个,则还应该✖C(N,i)AC代码:#include <bits/stdc++.h>using namespace std;typedef long long ll;...
2020-02-13 14:20:47 173
原创 ZZUSOFT- 米哉的烦恼:组合排列问题的递推dp(取球模型总结)
题目:解题思路:很明显,这道题就是我们高中时经常接触的组合排列问题下面对这种取球模型的组合排列问题进行总结:通过分析查表知道,这题题解即为C(m+n-1,m);然而,直接根据组合C公式用阶乘求解会出现两个超大数相乘爆ll的情况高中时我们学习过一个递推公式: C(n+1,m) = C(n,m) + C(n,m-1);我们由此生发出递推的想法.AC代码:#include &...
2020-02-13 13:36:46 377
原创 蓝桥杯—算法训练:s01串--递归
题解:根据前几个找递归规律即可递归题目的关键就是找全几个关键出口AC代码:#include <bits/stdc++.h>using namespace std;typedef long long ll;#define inf 0x3f3f3f3fvoid dg(ll n){ if(n==0) { cout<<"0"; ...
2020-02-12 11:14:32 167
原创 POJ-3278:BFS简单模板题
题目链接思路:每个节点可以继续发出三个节点,放入队列,依次搜查即可该题亦可用DFS做下面是BFS的AC代码:#include <iostream>#include <math.h>#include <stdio.h>#include <stdlib.h>#include <algorithm>#include <q...
2020-02-11 19:01:50 196
原创 2019河南ICPC省赛:DNA序列---变异问题,string模拟
细节比较多,注意好细节,利用好.substr即可题目:AC代码:#include <iostream>#include <math.h>#include <stdio.h>#include <stdlib.h>#include <algorithm>using namespace std;typedef long lon...
2020-02-11 17:20:58 273 2
原创 HDU:2020 :自定义类型的sort排序
按题意自定义个sort排序cmp即可AC代码:#include <iostream>#include <math.h>#include <stdio.h>#include <stdlib.h>#include <algorithm>using namespace std;typedef long long ll;bool...
2020-02-11 15:22:48 129
原创 POJ-2236:并查集模板题
题目链接简单的 Union&Find 的板子题AC代码:#include <iostream>#include <math.h>#include <stdio.h>using namespace std;typedef long long ll;#define N 1006ll fa[N];ll repair[N];void in...
2020-02-11 14:59:59 183
原创 ZZUSOFTOJ-小光的难题:前缀和,同余定理
AC代码:#include <bits/stdc++.h>using namespace std;typedef long long ll;#define N 100000+10ll add[N];ll a[N],b[N];ll cnt;int main(){ ll n,mod; cin>>n>>mod; for(ll i=1;i&...
2020-02-10 14:34:27 218
原创 河南省第十一届ACM大学生程序设计竞赛-治安管理:差分
这道题可以很好的帮助理解差分算法差分的AC代码:#include <bits/stdc++.h>using namespace std;typedef long long ll;#define N 100000+10ll cnt[N];int main(){ ll t; cin>>t; while(t--) { ...
2020-02-10 07:10:46 234
原创 Youhane Assembler:对KMP中Next数组的剖析运用
最近学习了KMP算法发现只是会做一下KMP的模板裸题并没有很深入了理解这个算法而这一题(题目链接)可以很好的帮助理解KMP算法中next数组的真正内涵和运用思路及知识点:1.next数组存的是该位置最长相同前后缀的长度2.为了防止拼接后的字符串越过两个原串的边界,在中间加一个唯一的字符隔开以下是AC代码:#include <bits/stdc++.h>using nam...
2020-02-07 23:12:16 204
原创 子串:模拟+KMP
题目链接#include <bits/stdc++.h>using namespace std;typedef long long ll;#define inf 0x3f3f3fll n;ll nt[inf];ll lent,lens;string t,s;ll flag;void Next(){ ll i=0;ll j=-1;nt[0]=-1; ...
2020-02-07 22:21:53 138
原创 2019河南ICPC省赛:DNA序列---复制问题【KMP的简单模板题】
由于数据弱,可以暴力。本题需要注意 回文串特判问题本文给出的是KMP代码:#include <bits/stdc++.h>using namespace std;typedef long long ll;#define inf 0x3f3f3fll nt[inf];ll lent, lens, cnt;string s,t;bool pad(){ for(...
2020-02-07 19:04:19 414
原创 PTA天梯赛:L1-006 连续因子 (20分) 详细分析
题目链接点这里总结 刚开始看到这道题的时候确实想了很久,一直在想怎么求出包括一段连续因子使其相乘等于n,最后我发现题目只是要求你求出连续因子,例如630可以分解为3×5×6×7,你只需要求出5 ×6×7,并不需要求出3.换句话说,只需要求出连续的因子,使其乘积可以被n整除该题需要注意的地方1.素数的特判2.输出的格式其他细节在代码注释中AC代码#include <bits/st...
2020-02-06 21:43:09 1661
原创 PTA天梯赛:L1-027 出租 (20分)简易代码
简单模拟,本题应该可以用set我用的是unique函数,简单易懂#include <bits/stdc++.h>using namespace std;typedef long long ll;#define inf 0x3f3f3fint main(void){ ll uniq[20]; ll index[20]; string a; cin>>a...
2020-02-06 20:32:03 554
原创 PTA天梯赛:L1-046 整除光棍 (20分)【模拟竖式除法】
题目链接第一次看题以为就是个简单模拟,很快打出代码交一发果然俩测试点TLE了;正确思路:模拟竖式除法思路就是模拟手算除法的过程,从最高位开始计算结果,如下示意图所示,先算出3,发现余数不为0,那就在余数末尾加1当除数,再算出7,发现余数为0了,除法计算就结束了。AC代码:#include <bits/stdc++.h>using namespace std;typed...
2020-02-06 18:45:21 387
原创 PTA天梯赛:L1-034 点赞 (20分)
L1-034 点赞 (20分)**思路:**把所有个性标签序号全部存入到1个数组中,在数组中求众数即可;AC代码:#include <bits/stdc++.h>using namespace std;typedef long long ll;#define inf 0x3f3f3fll label[inf];ll mark[inf];int main(void){...
2020-02-06 14:09:46 458
原创 【HDU-1720】利用cin>>hex快速解题
HDU-1720链接这里我们输入的A为十六进制,输出默认为10进制,即a;如果输入12,则为十六进制0x12,对应十进制16+2=18;下面是AC代码#include <iostream>using namespace std;int main(){ int a,b; while(cin>>hex>>a>>hex>...
2020-02-06 00:04:16 433
原创 PTA天梯赛:L2-008 最长对称子串 (25分)【利用Sting的做法】
#include <bits/stdc++.h>using namespace std;typedef long long ll;int main(void){ string v; getline(cin,v); ll ans=1; for(ll i=0;i<v.size();i++) { string a; ...
2020-02-05 23:56:11 175
原创 PTA天梯赛:L1-018 大笨钟 (10分)
#include <bits/stdc++.h>using namespace std;typedef long long ll;int main(void){ ll n; cin>>n; getchar();//read return key to prevent that getline read it; string v[n]; for(ll i=...
2020-02-05 22:53:15 426
原创 快速求出x的所有因子的一种办法
ll f(ll x){ //求x的因子个数 ll i,res=0; for(i=1;i*i<x;i++){ if(x%i==0)res+=2; } return res+(i*i==x);}巧妙之处:(i*i==x),为真 res+1,为假res+0....
2020-02-05 13:56:55 528 4
原创 ACM数论基础:同余定理、欧拉定理、互质、阶与原根
同余定理数论中的重要概念。给定一个正整数m,如果两个整数a和b满足a-b能够被m整除,即(a-b)/m得到一个整数,那么就称整数a与b对模m同余,记作a≡b(mod m)。对模m同余是整数的一个等价关系。互质互质是公约数只有1的两个整数,叫做互质整数。公约数只有1的两个自然数,叫做互质自然数,后者是前者的特殊情形注:c++中求最大公约数函数:_gcd(x,y); (gcd前为两个下划线)...
2019-11-19 17:13:48 1415
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人