fork download
  1. #include <stdio.h>
  2. #include <stdlib.h>
  3.  
  4. //必要があれば,関数をいくつでも追加して良い
  5.  
  6. int solve(){
  7. int ret;
  8. //ここにプログラムを書く
  9. //ret に答えを入れてメイン関数に返す
  10. //入力を受ける部分も自分で書いてください
  11. //今日の分を含め過去の授業のプログラムが
  12. //参考になるはずです
  13. int n,q;
  14. scanf("%d %d",&n,&q);
  15.  
  16. int *a=(int*)malloc(n*sizeof(int));
  17.  
  18. for(int i=0; i<n; i++){
  19. scanf("%d",&a[i]);
  20. }
  21.  
  22. for(int i=0; i<q; i++){
  23. int max=0;
  24. for(int j=1; j<n; j++){
  25. if (a[j]>a[max]) {
  26. max=j;
  27. }
  28. }
  29.  
  30. a[max]/=2;
  31. }
  32.  
  33. ret=0;
  34. for(int i=0; i<n; i++){
  35. ret+=a[i];
  36. }
  37.  
  38. free(a);
  39.  
  40. return ret;
  41. }
  42.  
  43. //メイン関数はいじらなくて良い
  44. int main(void){
  45. printf("%d\n",solve());
  46. return 0;
  47. }
  48.  
Success #stdin #stdout 0s 5276KB
stdin
7 2
10 40 60 30 80 5 30
stdout
185