fork download
  1. #include <bits/stdc++.h>
  2. #define VuDucNam ios_base::sync_with_stdio(false);
  3. #define Lop9a6 cin.tie(NULL);
  4. #define THCSPhamVanDong cout.tie(NULL);
  5. #define ll long long
  6. #define el cout << '\n'
  7. #define sz(a) (ll)a.size()
  8. #define all(a) a.begin(),a.end()
  9. #define fi first
  10. #define se second
  11. #define fill(a,x) memset(a,x,sizeof(a))
  12. #define file(name) \
  13.   if(fopen(name ".INP","r")) \
  14.   { \
  15.   freopen(name ".INP","r",stdin); \
  16.   freopen(name ".OUT","w",stdout); \
  17.   }
  18. #define TIME (1.0*clock()/CLOCKS_PER_SEC)
  19. #define RUNTIME cerr << "\nRuntime: " << TIME << "s.\n"
  20.  
  21. using namespace std;
  22.  
  23. const ll MOD = 1e9 + 7;
  24. const ll inf = LLONG_MAX;
  25.  
  26. struct dulieu {
  27. int start;
  28. int end;
  29. int money;
  30. };
  31.  
  32. bool cmp(dulieu a, dulieu b) {
  33. return a.end < b.end;
  34. }
  35.  
  36. int result(int n, dulieu f[]) {
  37. sort(f+1, f+n+1, cmp);
  38. int ans = 0;
  39. int tmp = 0;
  40. for (int i = 1; i <= n; ++i) {
  41. if (f[i].start >= tmp) {
  42. ans += f[i].money;
  43. tmp = f[i].end;
  44. }
  45. }
  46. return ans;
  47. }
  48. void solve()
  49. {
  50. int n;
  51. cin >> n;
  52. dulieu f[n+5];
  53. for (int i = 1; i <= n; ++i) {
  54. cin >> f[i].start >> f[i].end >> f[i].money;
  55. }
  56. int ans = result(n, f);
  57. cout << ans;
  58. el;
  59. }
  60.  
  61. int main()
  62. {
  63. VuDucNam Lop9a6 THCSPhamVanDong
  64. file("TIENKS");
  65. solve();
  66. RUNTIME;
  67. return 0;
  68. }
Success #stdin #stdout #stderr 0.01s 5272KB
stdin
3
1 2 8
2 3 6
4 7 6
stdout
20
stderr
Runtime: 0.004874s.