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

noi-9月23日作业

题目:B3917 [语言月赛 202401] 小跳蛙

网址:https://www.luogu.com.cn/problem/B3917

思路:我们用一个数组p来记录每只青蛙在的位置,p[i]代表编号为i的青蛙在a数组的位置。

知识点:一维数组,小模拟。

代码:

#include<bits/stdc++.h>
using namespace std;
const int maxn=1e6+10;int a[maxn],p[maxn];
int main(){int n;cin>>n;for(int i=1;i<=n;i++){cin>>a[i];p[a[i]]=i;}for(int i=1;i<=n-1;i++){int now=p[i],zero=p[0];swap(a[now],a[zero]);p[a[now]]=now;p[a[zero]]=zero;}for(int i=1;i<=n;i++)cout<<a[i]<<" ";return 0;
}

题目:B3765 [语言月赛202305] 超链接

网址:https://www.luogu.com.cn/problem/B3765

思路:我们定义一个a数组来记录每个页面能够到达的页面,vis数组来记录点击两次能够到达的页面。vis[i][j]代表点击i次j是否能够到达。

知识点:一维数组,二维数组,小模拟。

代码:

#include<bits/stdc++.h>
using namespace std;
const int maxn=1e3+10;int a[maxn][maxn];
int vis[3][maxn];
int main(){int n;cin>>n;for(int i=1;i<=n;i++){int cnt;cin>>cnt;a[i][0]=cnt;for(int j=1;j<=cnt;j++){int x;cin>>x;a[i][j]=x;}}for(int i=1;i<=a[1][0];i++){vis[1][a[1][i]]=true;
//		cout<<a[1][i]<<'\n';}for(int i=1;i<=n;i++){if(!vis[1][i])continue;for(int j=1;j<=a[i][0];j++){vis[2][a[i][j]]=true;}}vis[0][1]=true;int ans=0;for(int i=1;i<=n;i++){if(vis[1][i]||vis[2][i]||vis[0][i])ans++;}cout<<ans;return 0;
}

题目:P1190 [NOIP 2010 普及组] 接水问题

网址:https://www.luogu.com.cn/problem/P1190

思路:因为数据范围很小,所以我们按照题目的意思简单模拟一下。

知识点:while循环,小模拟。

代码:

#include<bits/stdc++.h>
using namespace std;
const int maxn=1e4+10;int a[maxn],s[maxn];
int main(){int n,m;cin>>n>>m;for(int i=1;i<=n;i++){cin>>a[i];}int id=1;int ans=0;while(true){if(id>n)break;for(int i=1;i<=m;i++){if(s[i]<=0){s[i]=a[id];id++;}s[i]--;}ans++;}int mx=0;for(int i=1;i<=m;i++){mx=max(mx,s[i]);}ans+=mx;cout<<ans;return 0;
}

题目:P2035 [USACO08JAN] iCow B

网址:https://www.luogu.com.cn/problem/P2035

思路:我们按照题目的意思模拟,每次找到最大的id并输出,然后进行更新操作。

知识点:双重for循环,简单模拟。

代码:

#include<bits/stdc++.h>
using namespace std;
const int maxn=1e4+10;int a[maxn],ans[maxn];
int main(){int n,T;cin>>n>>T;for(int i=1;i<=n;i++){cin>>a[i];}for(int i=1;i<=T;i++){int mx=-10,id=0;for(int j=1;j<=n;j++){if(a[j]>mx){mx=a[j];id=j;}}ans[i]=id;a[id]=0;int x=mx/(n-1);int md=mx%(n-1);for(int j=1;j<=n;j++){if(j==id)continue;a[j]+=x;if(md){a[j]++;md--;	}}	} for(int i=1;i<=T;i++)cout<<ans[i]<<'\n';return 0;
}

题目:P1003 [NOIP 2011 提高组] 铺地毯

网址:https://www.luogu.com.cn/problem/P1003

思路:我们先定义四个数组,分别记录每个地毯的左下角的x坐标,左下角的y坐标,在x坐标的长度,在y坐标的长度。然后我们倒叙枚举。

知识点:倒叙枚举,简单思维。

代码:

#include<bits/stdc++.h>
using namespace std;
const int maxn=1e4+10;int X[maxn],Y[maxn],lenx[maxn],leny[maxn];
int main(){int n;cin>>n;for(int i=1;i<=n;i++){cin>>X[i]>>Y[i]>>lenx[i]>>leny[i];}int tx,ty;cin>>tx>>ty;for(int i=n;i>=1;i--){int xx=X[i]+lenx[i],yy=Y[i]+leny[i];if(tx>=X[i]&&tx<=xx&&ty>=Y[i]&&ty<=yy){cout<<i;return 0;}}cout<<-1;return 0;
}

http://www.dtcms.com/a/403278.html

相关文章:

  • 购物网站每个模块主要功能怎么免费搭建网站
  • 如何高效使用Xshell和finalshell连接服务器,简单高效
  • Nestjs框架: 策略的权限控制(ACL)与数据权限实战
  • mmap 虚拟地址映射
  • 网站做好第二年要多少钱wordpress添加文件2m
  • Linux编程笔记2-控制数组指针函数动态内存构造类型Makefile
  • 【数据结构】冒泡、选择、插入、希尔排序的实现
  • npm镜像源配置指南
  • 【QT常用技术讲解】QTreeWidget实现树形筛选框(包含源码)
  • 站长工具ip查询外贸平台实训总结
  • 在JavaScript / HTML中,让<audio>元素中的多个<source>标签连续播放
  • 【Web前端|第二篇】JavaScript对象和事件
  • Linux配置网络————设置虚拟机为静态ip的网络配置详细教程
  • EPGF 架构为什么能保持长效和稳定?
  • reader should realize that all properties of real numbers that are to句子分析
  • ubuntu安装失败:Sorry, there was a problem completing the installation.原因分析及解决办法
  • 深圳商城网站设计价格网站轮播广告
  • AR技术:轨道交通运维与安全保障的革新力量
  • 友元类和友元函数bug
  • Zabbix7.4.8(二):通过http监控Nginx相关指标
  • 厦门 外贸网站访问数据库的网站开发语言
  • Gerkin+Pytest(python)实现自动化(BDD)
  • 动态住宅IP vs. 静态数据中心IP:未来趋势与当前选择
  • 子域名做微信开放平台网站应用芜湖企业100强
  • 很那网站建设做网站哪个公司好
  • Kafka的核心概念
  • Zookeeper 与 Kafka
  • 巴斯勒相机:30 年技术沉淀,重新定义机器视觉效率​
  • 【Kotlin进阶】泛型的高级特性
  • h.265格式的视频在浏览器无法正常播放,使用ffprobe转为h.264