当前位置: 首页 > article >正文

总结11..

#include <stdio.h>
#include <string.h>
#define MAXN 1001
#define MAXM 1000001
int n, m;
char maze[MAXN][MAXN];
int block[MAXN][MAXN];  // 标记每个格子所属的连通块编号
int blockSize[MAXN * MAXN];  // 记录每个连通块的大小
int dx[] = {0, 0, 1, -1};
int dy[] = {1, -1, 0, 0};
// 深度优先搜索函数
int dfs(int x, int y, int id) {
    if (x < 1 || x > n || y < 1 || y > n || block[x][y] != 0) return 0;
    block[x][y] = id;
    int size = 1;
    for (int i = 0; i < 4; i++) {
        int nx = x + dx[i];
        int ny = y + dy[i];
        if (maze[nx][ny] != '\0' && maze[nx][ny] != maze[x][y]) {
            size += dfs(nx, ny, id);
        }
    }
    return size;
}

int main() {
    scanf("%d %d", &n, &m);
    for (int i = 1; i <= n; i++) {
        scanf("%s", maze[i] + 1);
    }

    int blockId = 1;
    // 标记所有连通块并记录大小
    for (int i = 1; i <= n; i++) {
        for (int j = 1; j <= n; j++) {
            if (block[i][j] == 0) {
                blockSize[blockId] = dfs(i, j, blockId);
                blockId++;
            }
        }
    }

    // 处理询问
    for (int i = 0; i < m; i++) {
        int x, y;
        scanf("%d %d", &x, &y);
        printf("%d\n", blockSize[block[x][y]]);
    }
    return 0;
}

 

 

#include<stdio.h>
int max(int a,int b){
	return a>b?a:b;
}
int main()
{
	int t,m,w[103],v[103],dp[103][1003];
	scanf("%d %d",&t,&m);
	for(int i=1;i<=m;i++){
		scanf("%d %d",&w[i],&v[i]);
	}
	for(int i=1;i<=m;i++) 
        for(int j=t;j>=0;j--)  
        {
            if(j>=w[i])
            {
                dp[i][j]=max(dp[i-1][j-w[i]]+v[i],dp[i-1][j]);
            }  
            else
            {
                dp[i][j]=dp[i-1][j];
            }              
        }
    printf("%d",dp[m][t]);
	return 0;
 } 

学了图及最短路径问题,并刷了些题。 

 


http://www.kler.cn/a/533268.html

相关文章:

  • Verilog基础(三):过程
  • Ubuntu下Tkinter绑定数字小键盘上的回车键(PySide6类似)
  • CSS 样式化表格:从基础到高级技巧
  • 我们来学人工智能 -- 感悟DeepSeek
  • Windows图形界面(GUI)-QT-C/C++ - QT Tab Widget
  • Vite:现代前端开发的利器
  • Vue - customRef 自定义ref
  • shiro面试题
  • 【含文档+PPT+源码】基于Python爬虫二手房价格预测与可视化系统的设计与实现
  • Vue的状态管理:用响应式 API 做简单状态管理、状态管理库(Pinia )
  • 【论文精读】Taming Transformers for High-Resolution Image Synthesis
  • 【入门】如何使用DeepSeek批量创作短视频
  • git 指定ssh key
  • 【漫话机器学习系列】081.测量理论(Almost Everywhere)
  • 3D图形学与可视化大屏:如何让材质与光照进行交互。
  • C# 字符串与正则表达式介绍
  • 2.5学习
  • 阿里 Java 岗个人面经分享(技术三面 + 技术 HR 面):Java 基础 +Spring+JVM+ 并发编程 + 算法 + 缓存
  • 【学Rust写CAD】3 绝对坐标系详解
  • mini-lsm通关笔记Week2Day6
  • 电商项目-分布式事务(四)基于消息队列实现分布式事务
  • 【AI】DeepSeek R1本地化部署 Ollama + Chatbox 打造最强AI工具
  • php反序列化含CTF实战
  • Java三十天速成(java进阶篇)
  • 在uniapp中修改打包路径
  • Maven(Ⅲ)继承和聚合