P14358 [CSP-J 2025] 座位

P14358 CSP-J 2025 座位

来源:洛谷题库

思路

题目比较简单,数据量不大,要求求出出排序后的a1所在的列和行

  • 列:排序后的数组下标直接除n ,结果向上取整即可
  • 行:根据求出的列数分奇偶,用下标%行数n即可知道a1在这一列排第几,奇数从第一行开始,偶尔列从第n行开始排
  • 注意:特判一下下标%n==0的情况,奇数项是第n行,偶数项在第一行

代码

cpp 复制代码
#include<bits/stdc++.h>
using namespace std;
int a[10001];
int main(){
	int n,m;
	int c,r;//分别是列 、行
	cin>>n>>m;
	for(int i=1;i<=n*m;i++){
		cin>>a[i];
	}
	int k=a[1],t=0; //t排序后所在位置 
	sort(a+1,a+n*m+1,greater<int>());//降序排列 
	for(int i=1;i<=n*m;i++){
		if(a[i]==k) t=i;
	}
	//计算列数
	if(t%n==0) c = t/n; //是行的整数倍 直接输出 
	else c = t/n+1; //座位在下一行 
	//计算行数 
	cout<<c<<" ";
	if(t%n==0){ //位置刚好在首尾的情况 
		if(c%2==1) cout<<n; //奇数列在最后一排 
		else cout<<1;
	}else{
		if(c%2==1) cout<<t%n;
		else cout<<n-t%n+1;
	}
		return 0;
}
相关推荐
程序员清风3 小时前
算法题中的边界条件、测试与调试
开发语言·算法·kotlin
炘爚3 小时前
数据结构算法总结
数据结构·python·算法
Dageno_AI4 小时前
ChatGPT 不再引用 Reddit 之后,还值得在 Reddit 上做 AI 可见度吗?
算法
hetao17338374 小时前
2026-10-25 hetao1733837 的刷题记录
c++·算法
Jsundoku4 小时前
第七章 机器学习 -- 其他经典算法
人工智能·算法·机器学习
进击的丸子4 小时前
基于 ArcFace SDK 的跨平台人脸特征值下发、同步以及存储方案
后端·算法·代码规范
见叶之秋4 小时前
【C++】红与黑的边界:红黑树从插入到自检
数据结构·c++·算法·面试
一条闲鱼_mytube5 小时前
分布式 ID 生成方案:雪花算法与号段模式
分布式·算法·wpf
Msir_Modern5 小时前
Noita 元胞沙盒笔记
算法·unity·c#·游戏引擎·元胞自动机
木井巳6 小时前
【动态规划: 路径问题】不同路径
java·算法·leetcode·动态规划