#1567: 是我誤解題意了嗎?請AC的人幫幫忙!


timmymike (超小小蝦米)


 

與正確輸出不相符(line:3)
您的答案為: 275
正確答案為: 2147483611

Q:

魔術數字=(剩下的場數)+(落後者勝場數)-(領先者勝場數)+1

我的理解:

要讓阿尼雅繼續輸的次數,等於讓魔術數字算出時小於等於零的數

9 + 46 - 47 + 1 = 9(第一次的魔術數字)

4 + 46 - 52 + 1 = -1(最終結果需要得到的魔術數字)
;
21 + 30 - 49 + 1 = 3

19 + 30 - 51 + 1 = -1

所以,這個次數便是
if ( 第一次的魔術數字 % 2 == 0 ) // 代表結果需要得到的魔術數字為0
  魔術數字 /= 2 ; // 算出後便是剩下的次數(答案)
else
  魔術數字 = ( 魔術數字 / 2 ) + 1 ; // 算出後便是剩下的次數(答案)


請問是我誤解題意了嗎?哪個地方錯了呢?煩請高手解答...   T.T

#1586: Re:是我誤解題意了嗎?請AC的人幫幫忙!


bleed1979 (Bleed)


 

與正確輸出不相符(line:3)
您的答案為: 275
正確答案為: 2147483611

Q:

魔術數字=(剩下的場數)+(落後者勝場數)-(領先者勝場數)+1

我的理解:

要讓阿尼雅繼續輸的次數,等於讓魔術數字算出時小於等於零的數

9 + 46 - 47 + 1 = 9(第一次的魔術數字)

4 + 46 - 52 + 1 = -1(最終結果需要得到的魔術數字)
;
21 + 30 - 49 + 1 = 3

19 + 30 - 51 + 1 = -1

所以,這個次數便是
if ( 第一次的魔術數字 % 2 == 0 ) // 代表結果需要得到的魔術數字為0
  魔術數字 /= 2 ; // 算出後便是剩下的次數(答案)
else
  魔術數字 = ( 魔術數字 / 2 ) + 1 ; // 算出後便是剩下的次數(答案)


請問是我誤解題意了嗎?哪個地方錯了呢?煩請高手解答...   T.T


1.魔術數字只需算一次.

2.一定輸的情況, 如果阿尼剩下全贏都拼不過夜魅....

 

#1620: Re:是我誤解題意了嗎?請AC的人幫幫忙!


timmymike (超小小蝦米)


這些我都知道呀!(而且我的魔術數字也只算一次)

 是哪裡誤解還是搞不懂耶 orz + T.T

對不起可以麻煩你再解釋一次嗎?

 

#1686: Re:是我誤解題意了嗎?請AC的人幫幫忙!


beverage (good drinking)


這些我都知道呀!(而且我的魔術數字也只算一次)

 是哪裡誤解還是搞不懂耶 orz + T.T

對不起可以麻煩你再解釋一次嗎?

 


魔術數字=((剩下的場數)+(落後者勝場數)-(領先者勝場數))/2+1

我認為公式應為上面這個... 

#1729: Re:是我誤解題意了嗎?請AC的人幫幫忙!


timmymike (超小小蝦米)


照您的公式還是錯...還是搞不懂問題點在哪... 

 

# include <iostream>  
 
using namespace std ;  
 
int main() {  
 
  long int x1 = 0, x2 = 0 ; // 第一個人贏的場數和第二個人贏的場數  
  long int y1 = 0, y2 = 0 ;   
  long int set = 0 ; // 剩餘局數  
  long int magicnum = 0 ;   
  long int losset = 0 ; // 再輸幾場就結束了   
   
// 魔術數字=((剩下的場數)+(落後者勝場數)-(領先者勝場數))/2+1

  while ( cin >> x1 ) {  
    cin >> x2 >> y1 >> y2 >> set ;  
      
    if ( x1 > y1 ) // 若x1為領先者勝場數   
      magicnum = set + y1 - x1  ;  
    else 
      magicnum = set + x1 - x2  ;  
 
    if ( magicnum >= 0 ) {  
           
      cout << ( magicnum / 2 ) + 1 << endl ; 
 
    } // if  
    else 
      cout << "Must be a loser." << endl ;  
 
  } // while  
 
  return 0 ;  
 
 
} // main()  

#1746: Re:是我誤解題意了嗎?請AC的人幫幫忙!


beverage (good drinking)


照您的公式還是錯...還是搞不懂問題點在哪... 

 

# include   
 
using namespace std ;  
 
int main() {  
 
  long int x1 = 0, x2 = 0 ; // 第一個人贏的場數和第二個人贏的場數  
  long int y1 = 0, y2 = 0 ;   
  long int set = 0 ; // 剩餘局數  
  long int magicnum = 0 ;   
  long int losset = 0 ; // 再輸幾場就結束了   
   
// 魔術數字=((剩下的場數)+(落後者勝場數)-(領先者勝場數))/2+1

  while ( cin >> x1 ) {  
    cin >> x2 >> y1 >> y2 >> set ;  
      
    if ( x1 > y1 ) // 若x1為領先者勝場數   
      magicnum = set + y1 - x1  ;  
    else 
      magicnum = set + x1 - x2  ;  
 
    if ( magicnum >= 0 ) {  
           
      cout << ( magicnum / 2 ) + 1 << endl ; 
 
    } // if  
    else 
      cout << "Must be a loser." << endl ;  
 
  } // while  
 
  return 0 ;  
 
 
} // main()  


先判斷y1+m<x1   就輸定了

剩下的直接帶我那個公式