蓝桥杯算法模板

2023-11-06

模拟散列表

单链表

import java.io.*;
import java.util.Scanner;
public class dlb {
private static int N=100010;
    private static int head;
    private static int[] e=new int[N];
    private static int[] ne=new int[N];
    private static int idx;

    private static void init(){
        head=-1;
        idx=0;
    }
    private static void addtohead(int val){
        e[idx]=val;
        ne[idx]=head;
        head=idx;
        idx++;
    }
    private static void remove(int k){
        ne[k]=ne[ne[k]];
    }
    private static void add(int k,int val){
        e[idx]=val;
        ne[idx]=ne[k];
        ne[k]=idx;
        idx++;
    }
    public static void main(String[] args)throws IOException {
BufferedReader br=new BufferedReader(new InputStreamReader(System.in));
       int m=Integer.parseInt(br.readLine());
  init();
while(m-->0){
    String[] s=br.readLine().split(" ");
if(s[0].equals("H")){
    int val=Integer.parseInt(s[1]);
    addtohead(val);
} else if (s[0].equals("I")) {
    int k=Integer.parseInt(s[1]);
    int val=Integer.parseInt(s[2]);
    add(k-1,val);
}else{
   int k=Integer.parseInt(s[1]);
    if(k==0){
        head=ne[head];
    }else remove(k-1);


}


}

for(int i=head;i!=-1;i=ne[i]){
    System.out.print(e[i]+" ");


}




    }
}

拉链法

import java.io.*;
import java.util.*;
public class a1 {
    static int n;
    static int N=100003;
    static int[] h=new int[N];
    static int[] e=new int[N];
    static int[] ne=new int[N];
static int idx;
static void insert(int x){
    int k=(x%N+N)%N;
    e[idx]=x;
    ne[idx]=h[k];
    h[k]=idx++;
}
static boolean find(int x){
    int k=(x%N+N)%N;
    for(int i=h[k];i!=-1;i=ne[i]){
        if(e[i]==x)return true;
    }
    return false;
}

    public static void main(String[] args) {
        Scanner sc=new Scanner(new BufferedInputStream(System.in));
        int n= sc.nextInt();
        Arrays.fill(h,-1);
    while(n-->0){
       String op= sc.next();
        int x=sc.nextInt();
    if(op.equals("I"))insert(x);
      else {
          if(find(x)) System.out.println("Yes");
          else System.out.println("No");


    }


        }


    }
}

开放寻址法

import java.io.BufferedReader;
import java.io.BufferedWriter;
import java.io.InputStreamReader;
import java.io.OutputStreamWriter;
import java.util.*;
import java.io.*;
import java.math.*;
import java.io.BufferedReader;
import java.io.BufferedWriter;
import java.io.InputStreamReader;
import java.io.OutputStreamWriter;
import java.util.*;
import java.io.*;
import java.math.*;
public class a2 {
static int N=200000+3;
static int nu=0x3f3f3f3f;
  static int h[]=new int[N];
  static int n;
 static int find(int x){
      int t=(x%N+N)%N;
      while(h[t]!=nu&&h[t]!=x){
          t++;
          if(t==N)t=0;
      }
      return t;
  }

    public static void main(String[] args) {
        Scanner sc=new Scanner(System.in);
      Arrays.fill(h,nu);
      int  n=sc.nextInt();
      while (n-->0){
          String op= sc.next();
          int x= sc.nextInt();
          if(op.equals("I"))h[find(x)]=x;
          else {
              if(h[find(x)]==nu) System.out.println("No");
else System.out.println("Yes");

          }
      }

    }


}

广度优先搜索

import java.io.BufferedReader;
import java.io.InputStreamReader;
import java.util.LinkedList;
import java.util.Queue;

class BFS {
    static int N = 110, row, col;
    static BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
    static char[][] a = new char[N][N];
    static int[][] dir = new int[][]{{-1, 0}, {0, 1}, {1, 0}, {0, -1}};

    public static void main(String[] args) throws Exception {
        int m = Integer.valueOf(br.readLine());
        while (m-- > 0) {
            int n = Integer.valueOf(br.readLine());
            row = col = n;
            for (int i = 0; i < n; i++) {
                String s = br.readLine();
                for (int j = 0; j < n; j++) {
                    a[i][j] = s.charAt(j);
                }
            }
            String[] ss = br.readLine().split(" ");
            int x1 = Integer.valueOf(ss[0]);
            int y1 = Integer.valueOf(ss[1]);
            int x2 = Integer.valueOf(ss[2]);
            int y2 = Integer.valueOf(ss[3]);
            if (bfs(x1, y1, x2, y2)) System.out.println("YES");
            else System.out.println("NO");
        }
    }

    public static boolean bfs(int x1, int y1, int x2, int y2) {
        Queue<int[]> q = new LinkedList<>();
        if (a[x1][y1] == '#' || a[x2][y2] == '#') return false;
        if (x1 == x2 && y1 == y2) return true;
        q.offer(new int[]{x1, y1});
        boolean[][] st = new boolean[row][col];
        st[x1][y1] = true;
        while (!q.isEmpty()) {
            int[] poll = q.poll();
            for (int i = 0; i < 4; i++) {
                int nx = dir[i][0] + poll[0];
                int ny = dir[i][1] + poll[1];
                if (nx < 0 || nx >= row || ny < 0 || ny >= col) continue;
                if (st[nx][ny] || a[nx][ny] == '#') continue;
                st[nx][ny] = true;
                if (nx == x2 && ny == y2) return true;
                q.offer(new int[]{nx, ny});
            }

        }
        return false;
    }

}

深度优先搜索

import java.io.*;
import java.util.*;
class DFS{
    static int N=110,row,col;
    static BufferedReader br=new BufferedReader(new InputStreamReader(System.in));
    static char[][] a=new char[N][N];
    static int[][] dir=new int[][]{{-1,0},{0,1},{1,0},{0,-1}};

    public static void main(String[] args)throws Exception {
       int m=Integer.valueOf(br.readLine());
      while(m-->0){
          int n=Integer.valueOf(br.readLine());
          row=col=n;
          for(int i=0;i<n;i++){
              String s=br.readLine();
              for(int j=0;j<n;j++){
                  a[i][j]=s.charAt(j);
              }
          }
         String[] ss=br.readLine().split(" ");
        int x1=Integer.valueOf(ss[0]);
        int y1=Integer.valueOf(ss[1]);
        int x2=Integer.valueOf(ss[2]);
        int y2=Integer.valueOf(ss[3]);
        boolean[][] st=new boolean[n][n];
        if(a[x1][y1]=='#'||a[x2][y2]=='#') System.out.println("NO");
        else if (x1==x2&&y1==y2) {
            System.out.println("YES");
        }else if(dfs(x1,y1,x2,y2,st)){
            System.out.println("YES");
        }else System.out.println("NO");


      }

    }
public static boolean dfs(int x1,int y1,int x2,int y2,boolean[][] st){
        for(int i=0;i<4;i++){
            int nx=x1+dir[i][0];
            int ny=y1+dir[i][1];
            if(nx<0||nx>=row||ny<0||ny>=col)continue;
            if(st[nx][ny]||a[nx][ny]=='#')continue;
            st[nx][ny]=true;
            if(nx==x2&&ny==y2)return true;
            if(dfs(nx,ny,x2,y2,st))return true;
        }



        return false;
}



}

并查集

import java.util.Arrays;
import java.util.Scanner;
public class bcj {
    static int inf=0x3f3f3f3f;
    static int maxn=10051005;
    static int m,n,k,ans;
    static int[] p=new int[maxn];
    static Scanner sc=new Scanner(System.in);
static boolean[] vis=new boolean[maxn];
    public static void init(){
        Arrays.fill(vis,false);
        for (int i = 1; i <= n * m; i++) {
            p[i]=i;
        }
    }
  public static int find(int x){
        if(x!=p[x]){
            return p[x]=find(p[x]);
        }return x;
    }
    public static void join(int x, int y){
        int xx=find(x);
        int yy=find(y);
        if(xx!=yy)p[yy]=xx;
    }



    public static void main(String[] args) {

m= sc.nextInt();
n= sc.nextInt();
k= sc.nextInt();
init();

while (k-->0){
    int x,y;
    x= sc.nextInt();
    y= sc.nextInt();
    join(x,y);
}
for(int i=1;i<=m*n;i++){
    vis[find(i)]=true;

}
        for (int i = 1; i <= n * m; i++) {
            if(vis[i])ans++;
        }

        System.out.println(ans);


    }



}

扫雷

小明最近迷上了一款名为《扫雷》的游戏。

其中有一个关卡的任务如下:

在一个二维平面上放置着 nn 个炸雷,第 ii 个炸雷 (xi,yi,ri)(xi,yi,ri) 表示在坐标 (xi,yi)(xi,yi) 处存在一个炸雷,它的爆炸范围是以半径为 riri 的一个圆。

为了顺利通过这片土地,需要玩家进行排雷。

玩家可以发射 mm 个排雷火箭,小明已经规划好了每个排雷火箭的发射方向,第 jj 个排雷火箭 (xj,yj,rj)(xj,yj,rj) 表示这个排雷火箭将会在 (xj,yj)(xj,yj) 处爆炸,它的爆炸范围是以半径为 rjrj 的一个圆,在其爆炸范围内的炸雷会被引爆。

同时,当炸雷被引爆时,在其爆炸范围内的炸雷也会被引爆。

现在小明想知道他这次共引爆了几颗炸雷?

你可以把炸雷和排雷火箭都视为平面上的一个点。

一个点处可以存在多个炸雷和排雷火箭。

当炸雷位于爆炸范围的边界上时也会被引爆。

输入格式

输入的第一行包含两个整数 nmn、m。

接下来的 nn 行,每行三个整数 xi,yi,rixi,yi,ri,表示一个炸雷的信息。

再接下来的 mm 行,每行三个整数 xj,yj,rjxj,yj,rj,表示一个排雷火箭的信息。

输出格式

输出一个整数表示答案。

数据范围

对于 40%40% 的评测用例:0≤x,y≤109,0≤n,m≤103,1≤r≤100≤x,y≤109,0≤n,m≤103,1≤r≤10,

对于 100%100% 的评测用例:0≤x,y≤109,0≤n,m≤5×104,1≤r≤100≤x,y≤109,0≤n,m≤5×104,1≤r≤10。

输入样例:
2 1
2 2 4
4 4 2
0 0 5
输出样例:
2
样例解释

示例图如下,排雷火箭 11 覆盖了炸雷 11,所以炸雷 11 被排除;炸雷 11 又覆盖了炸雷 22,所以炸雷 22 也被排除。

难度:中等

时/空限制:1s / 256MB

总通过数:984

总尝试数:4743

来源:第十三届蓝桥杯省赛C++B组

算法标签

import java.io.BufferedReader;
import java.io.InputStreamReader;
import java.util.Arrays;

class Main {
    static final BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
    static final int N = 50010, M = 99997;
    static Circle[] cirs = new Circle[N];
    static long[] h = new long[M];
    static int[] id = new int[M];
    static boolean[] st = new boolean[M];
    static int n, m;
    static class Circle {
        public int x;
        public int y;
        public int r;

        public Circle(int x, int y, int r) {
            this.x = x;
            this.y = y;
            this.r = r;
        }
    }
    public static void dfs(int x, int y, int r) {
        st[find(x, y)] = true;
        for (int i = x - r; i <= x + r; i++) {
            for (int j = y - r; j <= y + r; j++) {
                if (sqr(i - x) + sqr(j - y) <= sqr(r)) {
                    int t = find(i, j);
                    if (id[t] != 0 && !st[t]) {
                        dfs(i, j, cirs[id[t]].r);
                    }
                }
            }
        }
    }

    public static long getkey(int x, int y) {
        return (long) x * 10000001 + y;
    }

    public static int find(int x, int y) {
        long key = getkey(x, y);
        int t = (int) ((key % M + M) % M);
        while (h[t] != -1 && h[t] != key) {
            if (++t == M) t = 0;
        }
        return t;
    }

    public static long sqr(int n) {
        return  n * n;
    }

    public static void main(String[] args) throws Exception {
        String[] ss = br.readLine().split(" ");
        n = Integer.parseInt(ss[0]);
        m = Integer.parseInt(ss[1]);
        Arrays.fill(h, -1);
        for (int i = 1; i <= n; i++) {
            ss = br.readLine().split(" ");
            int x = Integer.parseInt(ss[0]);
            int y = Integer.parseInt(ss[1]);
            int r = Integer.parseInt(ss[2]);
            cirs[i] = new Circle(x, y, r);
            int t = find(x, y);
            if (h[t] == -1) h[t] = getkey(x, y);
            if (id[t] == 0 || cirs[id[t]].r < r) {
                id[t] = i;
            }
        }
        while (m-- != 0) {
            ss = br.readLine().split(" ");
            int x = Integer.parseInt(ss[0]);
            int y = Integer.parseInt(ss[1]);
            int r = Integer.parseInt(ss[2]);
            for (int i = x - r; i <= x + r; i++) {
                for (int j = y - r; j <= y + r; j++) {
                    if (sqr(i - x) + sqr(j - y) <= sqr(r)) {
                        int t = find(i, j);
                        if (id[t] != 0 && !st[t]) {
                            dfs(i, j, cirs[id[t]].r);
                        }

                    }
                }
            }
        }
        int ans = 0;
        for (int i = 1; i <= n; i++) {
            if (st[find(cirs[i].x, cirs[i].y)]) ans++;
        }
        System.out.println(ans);
    }


}

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

蓝桥杯算法模板 的相关文章

  • C语言实现推箱子小游戏

    一 设计目的 用简单的C语言知识制作的推箱子游戏 通过上下左右键将所有箱子移动到目标位置 2 让我们更好地了解和巩固C语言知识 并实际运用 同时运用一些不太常见的知识点 二 功能描述 1 模块功能 本程序可分为初始界面 进行游戏 判定通关三
  • 【INS-30014】无法检查指定的位置是否位于CFS上的解决办法

    安装oracle数据库过程中 出现 INS 30014 无法检查指定的位置是否位于CFS上的解决办法如下 安装过程中 选择 仅安装数据库软件 在安装成功后 使用DBCA工具创建以及配置数据库即可
  • Peewee的坑

    db create tables Student 当如上使用时可能会报表Student不存在的错误 官方实例如db create tables Student Pet 改成db create tables Student safe True
  • 1093: 数1的个数

    存限制 128 MB 题目描述 给定一个十进制正整数n 1 n 10000 写下从1到n的所有整数 然后数一下其中出现的数字 1 的个数 例如当n 2时 写下1 2 这样只出现了1个 1 当n 12时 写下1 2 3 4 5 6 7 8 9
  • 蓝桥杯C/C++百校真题赛(3期)Day3(考勤刷卡、最大和)

    Day3 Q1 考勤刷卡 Q2 最大和 Q1 考勤刷卡 问题描述 小蓝负责一个公司的考勤系统 他每天都需要根据员工刷卡的情况来确定 每个员工是否到岗 当员工刷卡时 会在后台留下一条记录 包括刷卡的时间和员工编号 只 要在一天中员工刷过一次卡
  • Anaconda + jupyter notebook + jupyter lab环境配置

    1 更换源 1 1 pip源 pip config set global index url https pypi tuna tsinghua edu cn simple pip config set install trusted hos
  • Nginx基础03:配置文件nginx.conf(Part2)

    上一篇文章概述与罗列了 全局配置块 events配置块 http全局块 的基本配置与属性 本篇文章将继续深入server块的配置项 以及相关应用 上篇文章地址 Nginx基础02 配置文件nginx conf Part1 如何使用本篇文章
  • MySQL备份与恢复

    2 3 1备份MySQL数据库 在MySQL的bin目录下 有一个名为mysqldump的可执行文件 将该bin目录添加到环境变量中 可以利用它在 命令提示符 环境下来备份数据库 语法格式如下 mysqldump opt 要备份的数据库名
  • VisualStudio—Remote Debug

    主要用来解决本地调试没问题发布到远端后却报错的项目 一 Windows Debug Windows 本文叙述采用的VS2022 远端 windows服务器 安装远程调试器 远端 windows服务器 安装过程省略 详见官方参考链接中设置远程
  • macOS M2使用conda配置pytorch环境

    一 conda 首先我们需要有conda miniconda的安装配置流程可以看这个http t csdn cn ShcNb 二 进入官网 https pytorch org 选择对应的版本 复制下面的命令 conda install py
  • Qt的基本语法及其使用(一)

    Qt的概念 Qt是通用的C 开发界面框架 C 图形用户界面 应用程序开发框架 既可以开发GUI程序也可以开发开发非GUI程序 Qt是面向对象的框架 使用特殊的代码生成扩展 Qt的历史 1991由QT公司研发 2008年被诺基亚收购 2012
  • Pipenv:作为 Python 开发人员为什么应该使用它

    Pipenv 是一个旨在将所有打包世界中最好的东西带到 Python 世界的工具 它将 Pipfile pip 和 virtualenv 整合到一个命令中 它会自动为您的项目创建和管理虚拟环境 并在您安装 卸载包时从您的 Pipfile 添
  • FileZilla尝试连接“ECONNREFUSED - 连接被服务器拒绝”失败。

    考虑是否在ubuntu下开启了FTP服务 执行以下命令开启 sudo apt get install vsftpd 不能远程登陆 mobaxterm等 unbutu 考虑是否开启了SSH 使用以下命令开启 sudo apt get inst
  • 筛选sql中一列的重复数据及重复次数

    SELECT PROJECT CODE COUNT PROJECT CODE FROM meng project info GROUP BY PROJECT CODE HAVING COUNT PROJECT CODE gt 1 结果
  • 蓝桥杯-稍大的字符串

    题目 标题 稍大的串 串可以按照字典序进行比较 例如 abcd 小于 abdc 如果给定一个串 打乱组成它的字母 重新排列 可以得到许多不同的串 在这些不同的串中 有一个串刚好给定的串稍微大一些 科学地说 它是大于已知串的所有串中最小的串
  • 2021蓝桥杯模拟赛-跳跃

    题目 题目链接 题解 动态规划 算是比较基础的状态方程和状态定义 但是难点在于处理负权重的情况 代码 include
  • 非常优秀的网站设计案例,设计师必备

    厚积才能薄发 一个优秀的设计师的天性一定是想要获得更多网站设计灵感 擅于为新项目寻找创意切入点 搜索设计参考资源 最新的设计趋势 今天为大家带来了一组免费可商用的网站设计案例 通过这些网站设计案例 你可以获得 寻找不同风格的网站灵感 配色
  • 4大主流CPU处理器技术架构

    推荐阅读 浅谈linux 内核网络 sk buff 之克隆与复制 深入linux内核架构 进程 线程 了解Docker 依赖的linux内核技术 导读 RISC 精简指令集计算机 是一种执行较少类型计算机指令的微处理器 起源于80年代的MI
  • 试题 B: 顺子日期

    问题描述 小明特别喜欢顺子 顺子指的就是连续的三个数字 123 456 等 顺子日 期指的就是在日期的 yyyymmdd 表示法中 存在任意连续的三位数是一个顺 子的日期 例如 20220123 就是一个顺子日期 因为它出现了一个顺子 12
  • 2021年12月-电子学会青少年等级考试C语言(一级)真题与解析

    2021年12月软件编程 C语言 等级考试 一级 分数 100 题数 5 时间限制 1000 ms 内存限制 65536 kB 1 输出整数部分 题目描述 输入一个双精度浮点数 输出其整数部分 输入 一个双精度浮点数f 0 lt f lt

随机推荐

  • Web自动化测试12:Selenium窗口截图、验证码处理

    更多功能测试以及全套学习路线图均在专栏 戳进去领取 Web自动化测试01 认识web自动化在什么项目中适用 Web自动化测试02 Web自动化测试工具选择大全 Web自动化测试03 Selenium安装配置 详细教程 Web自动化测试04
  • kubernetes Deployment 详解 更新/回滚/缩放/暂停/恢复部署操作

    涉及文档 Deployments 官方文档 Deployments 简介 一个 Deployment 为 Pods 和 ReplicaSets 提供声明式的更新能力 你负责描述 Deployment 中的 目标状态 而 Deployment
  • SpringToolSuite4中集成maven

    目录 一 什么是Maven 二 Maven的使用 一 什么是Maven Maven是基于项目对象模型 POM project object model 可以通过一小段描述信息 配置 来管理项目的构建 报告和文档的软件项目管理工具 Maven
  • ImportError lib64 libstdc++.so.6 version CXXABI 1.3.9 not found required by home anaconda

    文章目录 1 现象 2 解决方案 3 参考 1 现象 ImportError lib64 libstdc so 6 version CXXABI 1 3 9 not found required by home qtxu anaconda3
  • YOLOX的解耦头结构思考

    问题 YOLOX提出了一个Decoupled Head结构以代替YOLO Head 进而在YOLOv3 baseline的基础上提升了1 1个百分点的mAP 那为什么解耦头结构就能够提升检测效果呢 调研 我主要在YOLOX原论文讲述Deco
  • Git创建、连接远程仓库命令

    目录 Git定义 作用 概念 配置 操作 全局配置 创建 添加到暂存盘 从暂存盘撤回 提交到版本库 从版本库切换版本库 查看记录 分支 标签 下载远程仓库 远程仓库 github 远程仓库 本地 本地推送到服务器 1 需要 2 成功 远程网
  • ggplot2入门大全(从菜鸟到高手)

    在开始ggplot2的学习之前 可以先看下我之前的一篇博客 关于快速作图 qplot 在本章你将学习 1 ggplot2中的mpg数据集 2 ggplot2图像的三个基本构成 数据 图形属性和几何对象 3 如何将变量映射到图形属性中 4 如
  • ExcelUtil对easyexcel2.X进行封装,实现一个方法完成简单的excel导入和导出。

    easyexcel basic demo ExcelUtil对easyexcel2 X进行封装 实现一个方法完成简单的excel导入和导出 使用介绍 一 背景 主流office文档操作组件性能比较 组件 功能简介 使用场景 测试环境 内存消
  • Python+Requests+Ddt+Execl接口测试框架整理之04(HTTP Requests请求方法封装)

    个人觉得最难的应该就是这里 我封装过来封装过去始终各种格式的请求都要出问题 总有正确的也有错误的 后来各种搜资料 然后看Requests模块中关于请求方法的源代码描述 才有了似懂非懂的感觉 单独写一个接口一个接口的请求很简单就没有错 但是封
  • b 站视频下载神器合集,支持电脑和手机端

    苏生不惑第289 篇原创文章 将本公众号设为星标 第一时间看最新文章 之前分享过很多篇关于b站的文章 号称 b 站最强脚本 每天定时签到腾讯 爱奇艺 网易云音乐 b站 a站 百度贴吧 天翼云盘等网站 又一视频下载神器 批量下载腾讯 优酷 爱
  • watson studio_认可Watson认知服务

    watson studio Over the last weeks I had to pleasure to investigate most of the Watson services on Bluemix Below is a ser
  • java实现ssh连接服务器

    目录 一 引入依赖 二 工具类 1 SSHExecutor类 2 SSHUtil类 三 使用方法 一 引入依赖
  • 清华大模型人才遭哄抢!盘点5大学术重镇10大产业玩家

    衡宇 发自 凹非寺量子位 公众号 QbitAI 做类ChatGPT产品 组中国版OpenaAI恐怕是先当下最最人尽皆知的创投野心 有人官宣标榜放话 也有VC开始把视角投向产学研转换的大模型项目 或许能更有基础一些 其中 清华大学显然处于身负
  • 刷题之合并二叉树

    给定两个二叉树 想象当你将它们中的一个覆盖到另一个上时 两个二叉树的一些节点便会重叠 你需要将他们合并为一个新的二叉树 合并的规则是如果两个节点重叠 那么将他们的值相加作为节点合并后的新值 否则不为 NULL 的节点将直接作为新二叉树的节点
  • sedona error : java.lang.NoClassDefFoundError: org/opengis/referencing/FactoryException

    具体原因不详 但笔者增加了一个依赖解决了
  • Python 2.7 requests库POST请求体中有中文的处理方法

    Python 2 7 requests库发送POST请求 请求体是JSON格式 JSON字符串中包含中文 可以如此处理 Python 2 7 默认的源码文件编码是 ASCIl 如果你想在源代码中使用非 ASCII 字符 比如中文 你需要在文
  • 怎样更改Jupyter NoteBook默认的工作空间

    1 首先打开命令窗口 输入 jupyter notebook generate config 2 根据上面得到的路径 找到jupyter notebook config py这个配置文件 3 用记事本打开 查找directory 4 把前面
  • 内容安全综合实践-数字水印

    DCT实现数字水印功能模块 1 整体效果 功能 添加和提取字符水印 添加和提取图片水印 整体效果 2 数字水印的基本特点 1 不可见性 在宿主数字媒体中嵌入一定数量的附加信息后 不能引起明显的将质现象 隐藏的数据不易觉察 即无法人为的看见或
  • Java中的关键字

    Abstract 表明类或者成员方法具有抽象属性 Assert 用来进行程序调试 Boolean 基本数据类型之一 布尔类型 Break 提前跳出一个块 Byte 基本数据类型之一 字节类型 Case 用在switch语句之中 表示其中的一
  • 蓝桥杯算法模板

    模拟散列表 单链表 import java io import java util Scanner public class dlb private static int N 100010 private static int head p