問題 : 密碼破譯
時間限制: 1 Sec 記憶體限制: 128 MB
題目描述
某組織欲破獲一個外星人的密碼,密碼由一定長度的字串組成。此組織擁有一些破譯此密碼的長度不同的鑰匙,若兩個鑰匙的長度之和恰好為此密碼的長度,則此密碼被成功破譯。現在就請你程式設計找出能破譯此密碼的兩個鑰匙。
輸入
第一行: N N為鑰匙的個數(1<=N<=1000)
第二行: L L為密碼的長度
以下有N行: Ai 每一行是一把鑰匙的長度 i=1,2,……,N
【限制條件】
輸出
樣例輸入
10
80
27
9
4
73
23
68
12
64
92
16
樣例輸出
6
7
#include <stdio.h>
int main()
{
int n, flag, l, s[1010];
while (scanf("%d", &n)!=EOF)
{
flag = 1;
scanf("%d", &l);
for (int i = 1; i <= n; i++)
scanf("%d", &s[i]);
for (int i = 1; i <= n - 1; i++)
{
for (int j = i + 1; j <= n; j++)
{
if(s[i] + s[j] == l)
{
printf("%d\n%d\n", i, j);
flag = 0;
break;
}
}
if(!flag)
break;
}
if (flag)
puts("0");
}
return 0;
}