题意就是给你一个n*m的矩阵,然后一个人从左上角往下走到头,然后再往右走到头,然后蛇形往上走,问第k步,这个人的坐标是多少。思路就是我们需要分情况讨论,一是k<n的情况,二是人走到最下边的情况,然后就是蛇形的情况。


AC代码:

#include<iostream>
#include <cstdio>
#include <cstring>
#define ll long long
using namespace std;
int main(){
	ll n,m,k,x,y;
	scanf("%I64d%I64d%I64d",&n,&m,&k);
	if(k < n){
		x = k + 1;
		y = 1;
	}
	else{
		k -= n;
		x = n - (k / (m - 1));
		if((n - x) % 2 == 1){
			y = m - k % (m - 1);
		}
		else
			y = 2 + k % (m - 1);
	}
	printf("%I64d %I64d\n",x,y);
	return 0;
}