18 条题解
-
1
#include #include using namespace std; int n, x; struct node { int int find(int num) { int l = 0, r = n-1; while (l <= r) { int mid = (l + r) / 2; if (num == a[mid].num) return a[mid].id; else if (num < a[mid].num) r = mid - 1; else l = mid + 1; } return -1; } bool cmp(node x, node y) { return x.num < y.num; } int main() { cin >> n; for (int i = 0; i < n; i++) { cin >> a[i].num; a[i].id = i+1; } sort (a, a + n,cmp); cin >> x; for (int i = 0; i < n; i++) { cout << a[i].num << " "; } cout << endl; int findnum = find(x); if(findnum == -1) cout << "吃饱喝足"; else cout << findnum << endl; }
信息
- ID
- 4
- 时间
- 5000ms
- 内存
- 128MiB
- 难度
- 3
- 标签
- 递交数
- 140
- 已通过
- 76
- 上传者