nyist 6 분수 장치 1

1368 단어 returndoubleinclude
먼저 이 문 제 를 보 니 비교적 간단 한 문제 이지 만 일부 세부 사항 을 잘 파악 하지 못 해서 항상 오류 가 발생 합 니 다. 문제 의 링크 를 보 내 주세요!
http://acm.nyist.net/JudgeOnline/problem.php?pid=6
자신 이 컴 파일 한 것 이 통과 되 지 않 았 습 니 다. 주로 너비 문 제 를 고려 하지 않 았 습 니 다. 그리고 길이 도 섬세 하 게 고려 하지 않 았 습 니 다. 물론 저도 sort 를 이용 하여 순 서 를 매 겼 습 니 다. 이것 은 매우 편리 합 니 다. 그렇게 제한 을 받 지 않 고 큰 것 부터 작은 것 까지 순서대로 왔 습 니 다.
AC 코드 를 붙 여 주세요!
#include <cstdio>
#include <cstdlib>
#include <cmath>
#include <algorithm>
using namespace std;
int cmp( const double &a, const double &b )
{
    if( a > b )
       return 1;
    else
       return 0;
}
int main( int argc, char **argv )
{
    int n;
    scanf("%d", &n);
    double buf[600];
    //          
    double len = sqrt(20*20 + 2*2)/2;
    while ( n-- )
    {
        int m;
        scanf("%d", &m);
        for ( int i = 0; i < m; ++i )
            scanf("%lf", buf+i);
       //      
       sort (buf, buf+m, cmp);
       double sum = 0;
       int i;
       for ( i = 0; i < m; ++i )
       {
           if (buf[i] <= 1)
                break;
           sum += buf[i];
           if ( sum >= len ) //                      
               break;
       }
       printf( "%d
", i+1); } return 0; }

본 고 는 '나의 알고리즘 노트' 블 로그 에서 나 왔 으 니 전 재 를 사절 합 니 다!

좋은 웹페이지 즐겨찾기