aboutsummaryrefslogtreecommitdiff
path: root/codeforces/TubeTubeFeed/main.rs
diff options
context:
space:
mode:
Diffstat (limited to 'codeforces/TubeTubeFeed/main.rs')
-rw-r--r--codeforces/TubeTubeFeed/main.rs51
1 files changed, 51 insertions, 0 deletions
diff --git a/codeforces/TubeTubeFeed/main.rs b/codeforces/TubeTubeFeed/main.rs
new file mode 100644
index 0000000..477d31a
--- /dev/null
+++ b/codeforces/TubeTubeFeed/main.rs
@@ -0,0 +1,51 @@
+use std::io;
+use std::str::FromStr;
+
+#[allow(unused_variables)]
+#[allow(dead_code)]
+
+fn read_line() -> String {
+ let mut buffer = String::new();
+ io::stdin()
+ .read_line(&mut buffer)
+ .expect("failed to read line");
+
+ buffer
+}
+
+#[allow(dead_code)]
+fn read<T: FromStr>() -> Result<T, T::Err> {
+ read_line().trim().parse::<T>()
+}
+
+#[allow(dead_code)]
+fn read_vec<T: FromStr>() -> Result<Vec<T>, T::Err> {
+ read_line()
+ .split_whitespace()
+ .map(|x| x.parse::<T>())
+ .collect()
+}
+
+fn solve() {
+ let v: Vec<i32> = read_vec().unwrap();
+ let (_, mut t) = (v[0], v[1]);
+ let a: Vec<i32> = read_vec().unwrap();
+ let b: Vec<i32> = read_vec().unwrap();
+ let mut mx = 0;
+ let mut idx = -1;
+ for i in 0..a.len() {
+ if t >= a[i] && b[i] > mx {
+ idx = i as i32 + 1;
+ mx = b[i];
+ }
+ t -= 1;
+ }
+ println!("{idx}");
+}
+
+fn main() {
+ let t = read::<i32>().unwrap();
+ for _i in 0..t {
+ solve();
+ }
+}