Advertisement
Guest User

Untitled

a guest
Aug 20th, 2019
78
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 1.53 KB | None | 0 0
  1. // code 1
  2. #include <iostream>
  3. #include <cstdio>
  4. #include <cstring>
  5. #include <cmath>
  6. #include <iomanip> //fixed setprecision
  7. using namespace std;
  8.  
  9. const int N = 16;
  10. double a[N], b[N], c[N];
  11.  
  12. int n;
  13.  
  14. double S(double x) {
  15. double ret = -1e100;
  16. for (int i = 1; i <= n; ++i) {
  17. ret = max(ret, a[i] * (x - b[i]) * (x - b[i]) + c[i]);
  18. }
  19. return ret;
  20. }
  21.  
  22. void solve() {
  23. cin >> n;
  24. for (int i = 1; i <= n; ++i) {
  25. cin >> a[i] >> b[i] >> c[i];
  26. }
  27. double L = 0.0, R = 300;
  28. int cnt = 300;
  29. while (cnt--) {
  30. double tl = L + (R - L) / 3;
  31. double tr = L + (R - L) / 3 * 2;
  32. if (S(tl) < S(tr)) R = tr;
  33. else L = tl;
  34. }
  35. //printf("%.5lf\n", L);
  36. cout << fixed << setprecision(5) << S(L) << endl;
  37. }
  38.  
  39. int main () {
  40. int T; cin >> T;
  41. for (int i = 0; i < T; ++i) {
  42. solve();
  43. }
  44. }
  45.  
  46. //code 2
  47.  
  48. #include <bits/stdc++.h>
  49. using namespace std;
  50.  
  51. int a[16];
  52. vector<int> sta;
  53. int n;
  54.  
  55. void dfs(int now, int cnt) {
  56. //try to push a[now]
  57. if (cnt == 6) {
  58. for (int i = 0; i < 6; ++i) {
  59. cout << sta[i] << ' ';
  60. }
  61. cout << endl;
  62. return;
  63. }
  64. if (now == n + 1) {
  65. return;
  66. }
  67. sta.push_back(a[now]);
  68. dfs(now + 1, cnt + 1);
  69. sta.pop_back();
  70. dfs(now + 1, cnt);
  71. }
  72.  
  73. int main () {
  74. while (scanf("%d", &n)) {
  75. if (n == 0) break;
  76. for (int i = 1; i <= n; ++i) {
  77. scanf("%d", &a[i]);
  78. }
  79. dfs(1, 0);
  80. }
  81. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement