A

link



这道题就先输出整个的\(oox\),再输出剩一个两个的。

点击查看代码
#include<bits/stdc++.h>

using namespace std;

int n;

signed main(){

	cin >> n;

	int t = n/3;
for(int i = 1;i <= t;++ i)
cout << "oox"; if(n%3 == 1) cout << "o";
if(n%3 == 2) cout << "oo"; return 0; }

B

link



可以用二维数组记录每个点到其他各点的距离,再找最小的。

点击查看代码
#include<bits/stdc++.h>

#define int long long

using namespace std;

int n;
int x[105],y[105];
double g[105][105]; signed main(){ cin >> n;
for(int i = 1;i <= n;++ i)
cin >> x[i] >> y[i]; for(int i = 1;i <= n;++ i){
for(int j = 1;j < i;++ j){
g[i][j] = sqrt((x[i]-x[j])*(x[i]-x[j])
+(y[i]-y[j])*(y[i]-y[j]));
g[j][i] = g[i][j];
}
} for(int i = 1;i <= n;++ i){
double mx =-1e6;
for(int j = 1;j <= n;++ j)
if(i != j) mx = max(mx,g[i][j]);
for(int j = 1;j <= n;++ j){
if(abs(g[i][j]-mx) <= 1e-6&&i != j){
cout << j << endl;
break;
}
}
} return 0; }

C

link



这个题也不难。

把每个颜色中的最小值存下来,再从这些中取最大值。

判断这个颜色之前出没出现过,新建一个位置,否则再原来的位置上再取\(min\)。

点击查看代码
#include<bits/stdc++.h>

#define int long long

using namespace std;

int n,c[200005],tp;
map<int,int> mp; signed main(){ cin >> n;
for(int i = 1;i <= n;++ i){
int a,cc;
cin >> a >> cc;
if(mp[cc]) c[mp[cc]] = min(c[mp[cc]],a);
else mp[cc] = ++tp,c[mp[cc]] = a;
} int ans = 0;
for(int i = 1;i <= tp;++ i)
ans = max(ans,c[i]); cout << ans; return 0; }

D

link



一个普普通通的广搜。

点击查看代码
#include<bits/stdc++.h>

using namespace std;

int h,w;
int a[205][205];
int n;
int r,c,e;
int sx,sy,tx,ty;
int eng[205][205];
int le[205][205];
int dx[] = {0,0,0,1,-1};
int dy[] = {0,1,-1,0,0}; struct nd{
int x,y;
}; signed main(){ cin >> h >> w;
for(int i = 1;i <= h;++ i)
for(int j = 1;j <= w;++ j){
char ch;
cin >> ch;
if(ch == '.')a[i][j] = 0;
if(ch == '#')a[i][j] = 1;
if(ch == 'S')a[i][j] = 0,sx = i,sy = j;
if(ch == 'T')a[i][j] = 0,tx = i,ty = j;
}
cin >> n;
for(int i = 1;i <= n;++ i){
cin >> r >> c >> e;
eng[r][c] = e;
} if(eng[sx][sy] == 0){
cout << "No";
return 0;
} queue<nd> q;
q.push({sx,sy});
le[sx][sy] = eng[sx][sy];
while(!q.empty()){
int x = q.front().x;
int y = q.front().y;
q.pop();
for(int i = 1;i <= 4;++ i){
int xx = x+dx[i];
int yy = y+dy[i];
if(a[xx][yy] == 1) continue;
if(xx <= 0||yy <= 0||xx > h||yy > w)
continue;
if(max(le[x][y]-1,eng[xx][yy]) > le[xx][yy]){
q.push({xx,yy});
le[xx][yy] = max(le[x][y]-1,eng[xx][yy]);
}
if(xx == tx&&yy == ty){
cout << "Yes";
return 0;
}
}
} cout << "No"; return 0; }

E

link

随机推荐

  1. 数据结构(C++)--学习单链表时发现的一些小坑

    基于类的链表类无相应构造函数报错 #include<bits/stdc++.h> using namespace std; const int MaxSize = 10; template ...

  2. 一文带你了解.NET能做什么?

    前言 在DotNetGuide技术社区微信交流群经常看到有小伙伴问:.NET除了能写桌面应用和Web应用还能做什么?今天大姚将通过本篇文章来简单讲讲.NET能做哪些开发,对.NET感兴趣的小伙伴也可以 ...

  3. .net core 下 DES &MD5加密

    項目中經常會用到加密解密,分享 DES & MD5加密,當然我們建議使用MD5. #region DES encrypt, decrypt public string EncryptDES(s ...

  4. harbor 构建企业级镜像仓库

    安装harbor 构建企业级镜像仓库 Harbor是由VMware公司开源的镜像仓库,harbor是在docker Registry上进行了企业级扩展,从而获得了更广泛的应用,这些新的企业级特性包括: ...

  5. svn递归添加目录下面所有文件

    进入根目录:$ svn add * --force A foo.c A somedir/bar.c A otherdir/docs/baz.doc

  6. C#笔记 窗体练习:海康相机SDK二次开发

    第一次写窗体应用程序,太闲了,给自己找点事情做... 1. 最基本的打开关闭 代码:https://gitee.com/yurj0403/hik-camera 强行练习一下用git 2. 加了状态栏 ...

  7. C#.NET Winform使用线程承载WCF (硬编码配置)

    winform同步承载WCF时,遇到大量请求,可能会阻塞UI线程.这时就需要开个线程来承载WCF. 1.硬编码形式创建WCF服务,WCFServer类: using CommonUtils; usin ...

  8. CentOS 7- 配置阿里镜像源

    1.备份CentOS 7系统自带yum源配置文件/etc/yum.repos.d/CentOS-Base.repo命令: mv /etc/yum.repos.d/CentOS-Base.repo /e ...

  9. 夜莺项目发布 v6.5.0 版本,暗黑菜单来了

    大家好,夜莺项目发布 v6.5.0 版本,启用新 logo,菜单支持换肤,支持了暗黑版本的菜单,下一步会支持全站暗黑主题,敬请期待,下面是新 logo. 暗黑菜单 页面右上角点击用户名,在下拉框里会有 ...

  10. MyBatis 的在使用上的注意事项及其辨析

    1. MyBatis 的在使用上的注意事项及其辨析 @ 目录 1. MyBatis 的在使用上的注意事项及其辨析 2. 准备工作 3. #{ } 与 ${ } 的区别和使用 {} 3.1 什么情况下必 ...