var n = parseInt(readline()); var line = readline().split(" "); var arr = []; for(var i=0;i<n;i++){ arr[i] = parseInt(line[i]); } var sum = parseInt(readline()); var left = 0,right = n-1; var str = ""; while(left<right){ var temp = arr[left]+arr[right]; if(temp<sum){ left++; }else if(temp>sum){ right--; }else{ str = arr[left] + " " + arr[right]; break; } } if(str){ console.log(str); }else{ console.log("notfound"); }
const readline = require('readline') const rl = readline.createInterface({ input: process.stdin, ouput: process.stdout }) let inArr = [] rl.on('line',line=>{ if(!line) return inArr.push(line.trim()) if(inArr.length === 3){ let arr = inArr[1].split(' ').map(e=>+e) let sum = +inArr[2] console.log(twoSum(arr,sum)) } }) function twoSum (arr, sum) { let len = arr.length let i = 0 let j = len - 1 if (len<2) return "notfound" while(i<j) { let res = arr[i] + arr[j] if (res === sum) return [arr[i], arr[j]].join(' ') if (res > sum) { j-- } if (res < sum) { i++ } } return "notfound" }
#include<iostream> using namespace std; int main() { int k; scanf("%d",&k); int a[k]; for(int i = 0; i < k ; i++) scanf("%d",&a[i]); int s; scanf("%d",&s); int i = 0,j = k - 1; while(i<j) { if(a[i] + a[j] == s) { printf("%d %d",a[i],a[j]); return 0; } else if(a[i] + a[j] > s) j -- ; else i ++ ; } printf("notfound\n"); return 0; }
function solve (arr, target) { let i = 0 let j = arr.length - 1 let first, last while (i < j) { first = arr[i] last = arr[j] const sum = first + last if (sum === target) return [first, last] else if (sum > target) j-- else i++ } return null }
let length = parseInt(readline()), arg = readline().split(" "), sum = parseInt(readline()), temp = {},// 用来存储遍历过的数字的对象 flag = 0; for(let i = 0; i < length; i++) { let a = arg[i]; let b = sum - a; temp[a] = 0; if(temp[b] === 0) { console.log(b+" "+a); flag = 1; break; } } if(flag === 0) { console.log("notfound"); }
const n = parseInt(readline()); const arr = readline().split(' ').map(Number); const target = parseInt(readline()); const test = (arr, target) => { const map = new Map(); const len = arr.length; for (let i = 0; i < len; i++) { if (map.has(arr[i])) { return [arr[map.get(arr[i])], arr[i]] } else { map.set(target - arr[i], i) } } } const a = test(arr, target); if (!a || !a.length) { console.log('notfound'); } else { console.log(a[0], a[1]); }
#include<iostream> using namespace std; int main(void){ int a; int n; cin >> a; int arr[1000000]; for(int i = 0; i < a; i++){ cin >> arr[i]; } cin >> n; int begin = 0; int end = a - 1; while(begin < end){ if(arr[begin] + arr[end] == n){ cout << arr[begin] << " " << arr[end]; return 0; }else if(arr[begin] + arr[end] > n){ end--; } begin++; } cout << "notfound"; return 0; }
function getSum(len, arr, sum) { if (len < 2) { return 'notfound' } for (var i = 0; i < len; i++) { for (var j = i + 1; j < len; j++) { if (arr[i] + arr[j] == sum) { return arr[i] + ' ' + arr[j] } } } return 'notfound' }