CSDN竞赛52期总结

2023-11-15

1、题目名称:投篮 小明投篮,罚球线投球可得一分,在三分线内投篮得分可以得到2分,在三分线以外的地方投篮得分可以得到3分,连续投 进得分累计,一旦有一个球没投进则得分清零,重新计算。现给出所有得分记录(清零不计入得分),请你计算一下小明 最多连续投进多少个球?

#include <iostream>
using namespace std;
int main() {
int n,ans=1,m=1;
cin>>n;
int a[n];
for(int i=0;i<n;i++){
cin>>a[i];
}
for(int i=1;i<n;i++){
if(a[i]>a[i-1]){//检测是否为单调递增序列
ans++;//如果是则记录递增长度
if(ans>m)m=ans;//记录并更新最大值
}else ans=1;//如果不是则重置递增长度
}
cout<<m;
}

2、题目名称:买苹果 小易去附近的商店买苹果,奸诈的商贩使用了捆绑交易,只提供6个每袋和8个每袋的包装(包装不可拆分)。 可是小易现在 只想购买恰好n个苹果,小易想购买尽量少的袋数方便携带。如果不能购买恰好n个苹果,小易将不会购买。

import java.util.Scanner;
public class Main {
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
while (sc.hasNext()) {
int n = sc.nextInt();
System.out.println(func(n));
}
}
private static int func(int n) {
int count = 0;
// 小于 6 个、奇数个苹果、 10 个苹果,不买
if (n < 6 || n % 2 != 0 || n == 10 ) {
return -1;
}
if (n % 8 == 0) {
count = n / 8;
}else {
count = n / 8 + 1;
}
return count;
}
}

3、题目名称:打家劫舍 一个小偷,计划偷窃沿街的房屋。每间房内都藏有一定的现金,影响你偷窃的唯一制约因素就是相邻的房屋装有相互连通 的防盗系统,如果两间相邻的房屋在同一晚上被小偷闯入,系统会自动报警。 给定一个代表每个房屋存放金额的非负整数 数组,计算不触动警报装置的情况下 ,一夜之内能够偷窃到的最高金额。

n=int(input())
nums=list(map(int,input().split()))
d1 = 0 #第一家没有进行偷窃
d2 = nums[0] #第一家进行了偷窃
for i in range(1,len(nums),1):
temp = max(d1,d2)
d2 = d1+nums[i]
d1 = temp
print(max(d1,d2))

4、题目名称:天然气订单 天然气运输成本昂贵,危险性高,为了节省运输成本,提倡绿色环保,需要尽可能的优化订单配送,比如相同地区的天然 气订单可以一次性配送。 现需要向多个地区运输天然气。但是同一个地区可能有多个订单需求。当前仅只知道某些成对的 订单是同一个地区的,同一个地区的天然气需要尽可能一次性配送从而降低运输成本,所以需要尽可能的将同一个地区的 订单放在一起。订单的编号是1到n。

#include <iostream>
#include <vector>
#include <queue>
#include <algorithm>
using namespace std;
const int MAXN = 10010;
int n, m, cnt = 0;
vector<int> G[MAXN];
bool vis[MAXN] = {false};
void bfs(int u, vector<int>& v) {
queue<int> q;
q.push(u);
v.push_back(u);
vis[u] = true;
while (!q.empty()) {
int x = q.front();
q.pop();
for (int i = 0; i < G[x].size(); ++i) {
int y = G[x][i];
if (!vis[y]) {
q.push(y);
vis[y] = true;
v.push_back(y);
}
}
}
}
int main() {
cin >> n >> m;
for (int i = 0; i < m; ++i) {
int u, v;
cin >> u >> v;
G[u].push_back(v);
G[v].push_back(u);
}
vector<vector<int>> ans;
for (int i = 1; i <= n; ++i) {
if (!vis[i]) {
vector<int> v;
bfs(i, v);
ans.push_back(v);
++cnt;
}
}
cout << cnt << endl;
sort(ans.begin(), ans.end(), [](vector<int> a, vector<int> b) {
return a[0] < b[0];
});
for (auto& v : ans) {
sort(v.begin(), v.end());
for (int i = 0; i < v.size(); ++i) {
cout << v[i];
if (i < v.size() - 1) {
cout << " ";
}
}
cout << endl;
}
return 0;
}

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

CSDN竞赛52期总结 的相关文章

随机推荐

  • 调用百度地图5.0出现java.lang.UnsatisfiedLinkError: No implementation found for int

    转载请注明 http blog csdn net seven2729 article details 48289101 调用百度地图 5 0手机报错 黑屏并闪退 报错日志 java lang UnsatisfiedLinkError No
  • java——SpringBoot后台Controller接收数组参数

    1 前台传数组 var ids 1 2 3 4 5 6 ajax url postArray type post dateType json data ids ids success function res console log 数据
  • 状态码415解决

    状态码415 状态码415这是个什么鬼 常见的转态码 是200 204 206 301 302 303 304 400 401 403 404 405 500 503这个HTTP 协议原生的状态码 自己项目封装指定的那就另当别论 415很少
  • git报错“remote: HTTP Basic: Access denied”的解决方法

    使用git推送项目代码或者下载项目代码时出现报错 remote HTTP Basic Access denied 很多时候都是由于用户名和密码没有和注册所填信息保持一致造成的 解决方法是首先在git中输入 git config system
  • IC学习笔记6——单比特信号的跨时钟域处理方法之“打两拍”

    一 打两拍 对于单比特信号的跨时钟域处理问题 通常使用两级的寄存器来同步源寄存器的信号 这样的方法简称打两拍 1 1 电路波形图 如上图所示从源寄存器传递过来的信号adata没有满足目的寄存器的建立和保持时间 发生亚稳态 但是绝大多数的时候
  • 一行代码搞定Http请求,强得离谱~

    大家好 我是乔哥 OKHttpUtil 在Java的世界中 Http客户端之前一直是Apache家的HttpClient占据主导 但是由于此包较为庞大 API又比较难用 因此并不使用很多场景 而新兴的OkHttp Jodd http固然好用
  • jenkins配置测试邮件发送成功但构建邮件发送失败

    以下失败原因只是其中之一 每个人遇到的可能并不一样 希望本文能提供解决思路 在配置jenkins发送邮件的时候按照网上查询的各个步骤配置完毕 邮件测试也可以发送成功 但是当进行项目构建时 日志提示邮件已经发送 但实际并未收到邮件 使用的是Q
  • git clone 下载 其他分支

    总是记不住 可能是因为用得少 如果 已经 clone了 master分支 方法 1 那么 本地 git pull 然后执行 git checkout b 本地分支名 origin 远程分支名 这样就能下载 到远程分支 并建立本地关联 方法2
  • 【模拟】不高兴的津津

    题目 不高兴的津津 rqnoj20 题目描述 津津上初中了 妈妈认为津津应该更加用功学习 所以津津除了上学之外 还要参加妈妈为她报名的各科复习班 另外每周妈妈还会送她去学习朗诵 舞蹈和钢琴 但是津津如果一天上课超过八个小时就会不高兴 而且
  • loadrunner agent process进程

    LoadRunner Agent Processer是LR的代理进程 有很大的用处 比如当一台机器要分担一定 负载的时候 这个LoadRunner Agent Processer是必须启动的 在LR安装后一般是开机启动的 可以关掉 就象个地
  • git 使用总结

    1 本地安装git 略 2 创建github账号 略 3 本地配置 配置用户名和邮箱 git config global user name xiaobuisme git config global user email 81954469
  • Codemonkey 编码冒险课程

    转自 https blog csdn net mmh19891113 article details 80704745 Codemonkey 编码冒险课程 1 200 关卡 我们并没有按照他们官方的来划分关卡 官方是1 100 101 20
  • 在struts框架下实现文件的上传

    由于jspsmartupload上传文件 当前端页面没有file控件时 后端用jspsmartupload控件upload时将会走入一个死循环 现在采用struts自己提供的功能实现文件的上传 1 前端页面upload jsp
  • 使用Process Monitor工具监测进程对注册表和文件的操作

    使用Process Monitor工具监测进程对注册表和文件的操作 在C C 中编写代码实现 Process Monitor是一款功能强大的Windows系统工具 它可以用于监测和记录系统中的进程对注册表和文件的操作 通过使用Process
  • SQL注入攻击介绍

    SQL注入攻击介绍 一 SQL注入攻击简介 SQL注入攻击是指 后台数据库操作时 如果拼接外部参数到SQL语句中 就可能导致欺骗服务器执行恶意的SQL语句 造成数据泄露 删库 页面篡改等严重后果 按变量类型分为 数字型 字符型 按HTTP提
  • tomcat开启远程管理Manager

    启动tomcat 点击Manager App 403错误 根据提示 有两个地方需要修改 一个是开启允许远程访问 否则只能本机访问 另一个是打开manager gui 添加用户权限 1 开启远程访问 两种方式 a 打开若没有则新建 conf
  • Elasticsearch Java API四种实现方式

    0 题记 之前Elasticsearch的应用比较多 但大多集中在关系型 非关系型数据库与Elasticsearch之间的同步 以上内容完成了Elasticsearch所需要的基础数据量的供给 但想要在海量的数据中找到和自己相关的业务数据
  • 使用hbuilderx开发小程序项目遇到的问题

    因为在hbuilderx打开项目 文件结构与开发者工具中打开不一致 例如hbuilderx中只有一个 vue文件 开发者工具中则是四个文件wxml wxss js json分别对应结构 样式 代码逻辑 和组件页面配置 配置组件相关 在hbu
  • C++ 并行编程(thread)---多线程

    C 并行编程 多线程 1 并发与并行 2 进程和线程 2 1 常规解释 2 2 总结 2 3 具体理解 2 4 为什么使用多线程 2 5 进程和线程的区别 3 C 中的多线程 3 1 存储持续性 补充 4 从头文件
  • CSDN竞赛52期总结

    1 题目名称 投篮 小明投篮 罚球线投球可得一分 在三分线内投篮得分可以得到2分 在三分线以外的地方投篮得分可以得到3分 连续投 进得分累计 一旦有一个球没投进则得分清零 重新计算 现给出所有得分记录 清零不计入得分 请你计算一下小明 最多