Advertisement
Guest User

Untitled

a guest
Jun 21st, 2018
94
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 4.72 KB | None | 0 0
  1. /*
  2. oooooooydmmNNNNNNNNNNNNNNNNNNNNNNmmmNNNNNNNNNNNNNNNNNNNNNNNNNNNNmdhyooooooo
  3. ooooydNNNNNNNNNNNNNNNNNNNNNNNNmmNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNdyoooo
  4. oosmNNNNNNNNNNNNNNNNNNNNNNNNNNmmmmddmNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNmsoo
  5. oshmNNNNNNNNNNNNNNNNNNNNNNNNmdsshdmmmmmmNNNNNNNNNdmNNNNNNNNNNNNNNNNNNNNNNyo
  6. shhdNNNNNNNNNNNNNNNNNNNNNmys++/:--.....-:+oshmNNNmhmNNNNNNNNNNNNNNNNNNNNNNy
  7. yhhhNNNNNNNNNNNNNNNNNmho:.`` `./sdNNNNNNNNNNNNNNNNNNNNNNNNNNm
  8. hhhhNNNNNNNNNNNNNhhyo-` `-/ydNNNNNNNNNNNNNNNNNNNNNNNNN
  9. hddhdNNNNNNNNNNNd+.` .:+hNNNNNNNNNNNNNNNNNNNNNNNN
  10. hmdyhdNNNNNNNNdo-` .:+mNNNNNNNNNNNNNNNNNNNNNNN
  11. yyddyhmNNNNNmo. `/oymNNNNNNNNNNNNNNNNNNNNNN
  12. sshmmNNNNNNd-` ` ` `+ssdNNNNNNNNNNNNNNNNNNNNN
  13. ooyNNNNNNNm: `````` `://sdNNNNNNNNNNNNNNNNNNN
  14. sydmNNNNNNd. ```` ` `..`` ``:smNNNNNNNNNNNNNNNNN
  15. mmmmNNNNNNd. ` ````` `.-:///:-` `.+dNNNNhNNNNNNNNNNN
  16. NmmNNNNNNNd. ` -/shhhhdds- `:yNNNhdmNNNNNNNNN
  17. NNNNNNNNNNd` ```` ` ``` `:hd/-::-omy` `-smNNhdNNNNNNNNN
  18. NNNNNNNNNNy `.:/+oo+:. ` `` `/do `ys .ho` `:smNddNNNNNNNNN
  19. NNNNNNNNNNy `:/ydhs++++. ` ``` -yho:::-++. `:yNNmNNNNNNNNN
  20. NNNNNNNNNNm. .:omm-`y/ +/` ` ````` ``-+sso+:-``` `/hNNNNNNNNNNN
  21. NNNNNNNNNNN/ `.+mm/-/::s/``` ```` ```....``````` .+mNNNNNNNNNN
  22. NNNNNNNNNNNo `.+hddhys+-.`````````` ````...``````` `:hNNNNNNNNNN
  23. NNNNNNNNNNN+ `.:::--...``` ``````` `````` -sNNNNNNNNyo
  24. NNNNNNNNNNd- ```````````` `````` .+dNNNNNNN/.
  25. NNNNNNNNNNh` ````````` `` ` .:omNNNNNN/`
  26. NNNNNNNNNNy` ` ```` ``` `.:hNNNNNN/
  27. NNNNNNNNNNh` ```` ``` `--` `.oNNNNNN+
  28. NNNNNNNNNNm- ` ` `` `./oo:` `+NNNNNNs
  29. NNNNNNNNNNNy` ``` `:oyhs:` `+NNNNNNy
  30. NNNNNNNNNNNNo.` `.`` `-/shhyo:` `-sNNNNNNy`
  31. NNNNNNNNNNNNNs. `-//:.` `..:oyyys+-` `/mNNNNNNs`
  32. NNNNNNNNNNNNNNh:` `-/oso:.` ``````...`````-.-shhs/. `:hNNNNNNd/
  33. NNNNNNNNNNNNNNNm+` `.:osyyo/::-.`` .:syso/. `.:yNNNNNNNd:
  34. mNNNNNNNNNNNNNNNNy:` `.:osyy+.```` `-:+ssso+-` .-/sNNNNNNNNy-.
  35. yNNNNNNNNNNNNNNNdNms:.````-/osyo.``` ...`./+:oo+/-.`` `.:+smNNmmNNNNo./
  36. ohNNNNNNNNNNNNmNhhNhoo:.` ``:osyo:+++:/:--`..-+ss+:-.`` `-/oymNNh-ydNNh//o
  37. ooymNNNNNNNNNs+NmsNd.-os/...`-+yhy+-.````../+sssy++/-:.`.:oshmNNm-:+yNNhooo
  38. ooooydNNNNNNN:-yNhdN/ -oyo//-.+yhhhyssyyyoooyhhyhs/-.`.+hmNNNNN/.//sdyoooo
  39. oooooooyhmmNy:-:hhyms` .oddh+:+hdddhyyhhhhhddddh+-..-/hNNNNNN+--/+ooooooo
  40. */
  41. #pragma comment(linker, "/stack:200000000")
  42. #pragma GCC optimize("Ofast")
  43. #pragma GCC target("sse,sse2,sse3,ssse3,sse4,popcnt,abm,mmx,avx,tune=native")
  44. #pragma GCC optimize("unroll-loops")
  45. #include<bits/stdc++.h>
  46.  
  47. using namespace std;
  48.  
  49. typedef long long ll;
  50. #define vll vector< ll >
  51. #define pll pair<ll, ll>
  52. #define vpll vector<pll>
  53. #define vvll vector<vector< ll > >
  54. #define fo(in, out) freopen(in, "r", stdin);freopen(out, "w", stdout);
  55. #define int ll
  56. #define debug(a) cerr << #a << " = " << a << '\n';
  57. #define debug2(a, b) cerr << #a << " = " << a << ", " << #b << " = " << b <<'\n';
  58. #define debug3(a, b, c) cerr << #a << " = " << a << ", " << #b << " = " << b << ", " << #c << " = " << c << '\n';
  59.  
  60. signed main(){
  61. #ifdef DEBUG
  62. freopen("in.txt", "r", stdin);
  63. #endif
  64. ios_base::sync_with_stdio(0);
  65. cin.tie(0);
  66. cout.tie(0);
  67. ll h, w, n;
  68. cin >> h >> w >> n;
  69. vll wi(n);
  70. h = min(h, n+1);
  71. ll k = (ll)(sqrt(h+1));
  72. vll free(h, w);
  73. ll m = (h+k-1)/k;
  74. vll b(m, w);
  75. for(int i=0;i<n;i++){
  76. ll width;
  77. cin >> width;
  78. bool f = 1;
  79. for(int i=0;i<m;i++){
  80. if(b[i]>=width){
  81. ll ind = -1;
  82. for(int j=k*i;j<min(h, k*(i+1));j++){
  83. if(free[j]>=width){
  84. free[j]-=width;
  85. ind = j;
  86. break;
  87. }
  88. }
  89. if(ind==-1) break;
  90. f = 0;
  91. cout << ind+1 << '\n';
  92. b[i] = -1;
  93. for(int j=k*i;j<min(h, k*(i+1));j++){
  94. if(free[j]>b[i]){
  95. b[i] = free[j];
  96. }
  97. }
  98. break;
  99. }
  100. }
  101. if(f) cout << -1 << '\n';
  102. }
  103. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement