NC54157. 最高身高
描述
KiKi想从n行m列的方阵队列中找到身高最高的人的位置,请你帮助他完成这个任务。
输入描述
第一行包含两个整数n和m,表示这个方阵队列包含n行m列。从2到n+1行,每行输入m个整数(范围-231~231-1),用空格分隔,共输入n*m个数,表示方阵中的所有人的身高(保证输入身高都不相同)。(1≤x≤n≤10,1≤y≤m≤10)
输出描述
一行,输出两个整数,用空格分隔,表示方阵中身高最高的人所在的行号和列号。
示例1
输入:
2 2 175 180 176 185
输出:
2 2
Java 解法, 执行用时: 44ms, 内存消耗: 10852K, 提交时间: 2023-08-11 10:25:21
import java.util.Scanner; public class Main { public static void main(String[] args) { Scanner in= new Scanner(System.in); int n=in.nextInt(); int m=in.nextInt(); int x=0,y=0,max= 0; for(int i=0;i<n*m;i++){ int temp=in.nextInt(); if(max<temp){ max=temp; y=i%m+1; x=(i+1-y)/m+1; } } System.out.println(x + " " + y); } }
Go 解法, 执行用时: 3ms, 内存消耗: 912K, 提交时间: 2023-08-11 10:24:50
package main import "fmt" func main() { var ( n, m, i, j, a, x, y, t int ) fmt.Scan(&n, &m) for i = 0; i < n; i++ { for j = 0; j < m; j++ { fmt.Scan(&a) if (a > t) { t = a x = i y = j } } } x++ y++ fmt.Printf("%d %d", x, y) }
Python3 解法, 执行用时: 42ms, 内存消耗: 4584K, 提交时间: 2023-08-11 10:23:36
n, m = map(int, input().split()) ans = '0 0' _max = -2**32 for i in range(n): arr = [int(v) for v in input().split()] for j in range(m): if arr[j] > _max: _max = arr[j] ans = f'{i+1} {j+1}' print(ans)
PHP 解法, 执行用时: 9ms, 内存消耗: 2976K, 提交时间: 2023-08-11 10:20:44
<?php $input = explode(' ', fgets(STDIN)); $n = intval($input[0]); $m = intval($input[1]); $max = -2**32; $ans = '0 0'; for ( $i = 1; $i < $n+1; $i++ ) { $arr = explode(' ', fgets(STDIN)); for ( $j = 1; $j < $m+1; $j++ ) { if ( intval($arr[$j-1]) > $max ) { $ans = "{$i} {$j}"; $max = intval($arr[$j-1]); } } } echo $ans; // todo