练 习 题

cpp 复制代码
#include <bits/stdc++.h>
using namespace std;
int p(int a[], int l, int r) {
	int v = a[r];
	int i = l - 1;
	for (int j = l; j < r; j++) {
		if (a[j] >= v) {
			i++;
			swap(a[i], a[j]);
		}
	}
	swap(a[i+1], a[r]);
	return i + 1;
}
int fi(int a[], int l, int r, int k) {
	if (l == r) return a[l];
	int s = p(a, l, r);
	int b = s - l + 1;
	if (b == k) return a[s];
	else if (b > k) return fi(a, l, s-1, k);
	else return fi(a, s+1, r, k-b);
}

int main() {
	int n, k;
	cin >> n >> k;
	int a[100000];
	for (int i = 0; i < n; i++) cin >> a[i];
	cout << fi(a, 0, n-1, k) << endl;
	return 0;
}
cpp 复制代码
#include <bits/stdc++.h>

using namespace std;

int main() {
	int n;
	cin >> n;
	
	int s[1000], e[1000];
	for (int i = 0; i < n; ++i) {
		cin >> s[i] >> e[i];
	}
	
	for (int i = 0; i < n - 1; ++i) {
		for (int j = 0; j < n - i - 1; ++j) {
			if (s[j] > s[j + 1]) {
				swap(s[j], s[j + 1]);
				swap(e[j], e[j + 1]);
			}
		}
	}
	int ms = s[0], me = e[0];
	bool f = true;
	for (int i = 1; i < n; ++i) {
		if (s[i] <= me) {
			me = max(me, e[i]);
		} else {
			f = false;
			break;
		}
	}
	if (f==true) {
		cout << ms << " " << me << endl;
	} else {
		cout << "no" << endl;
	}
	return 0;
}
相关推荐
ZhengEnCi3 小时前
同样的模型,为什么本地和云 API 差别那么大:量化精度、聊天模板与采样参数的三大元凶
人工智能·算法·llm
会编程的小孩3 小时前
C++ 定时器
c++
Flynn Liang3 小时前
RAG 答非所问/幻觉怎么破?Spring AI QuestionAnswerAdvisor 召回优化实战(TopK/重排/混合检索)
人工智能·算法·spring·rag·幻觉·springai
liminla!4 小时前
SQL 从入门到进阶:语法速查与实战练习(完整优化版)
数据库·sql·算法
沫璃染墨4 小时前
从零入门计算机网络系列(十一):HTTP协议进阶——从重定向原理到GET/POST与Fiddler抓包
linux·服务器·开发语言·网络·c++·tcp/ip·html
维克兜率天5 小时前
【维克】指数调整:哪些股票会被“强制买入“?
人工智能·python·算法
罗西的思考5 小时前
【轻量化复刻大模型】线性注意力交互式演示
人工智能·算法·机器学习
神也畏惧菠萝6 小时前
Day08 Python流程控制从入门到上瘾:if/match/while/for四件套,从B站登录一路打到猜数字游戏
python·算法·数据存储·for·while·if·ifelse
揽星河..6 小时前
【C语言】分支和循环
c语言·c++·算法