2010-02-04 3 views
1
#include<iostream> 

using namespace std; 

int main() 
{ 
    int hash, opp, i, j, c = 0; 

    //cout<<"enter hasmat army number and opponent number\n"; 
    while(cin>>hash>>opp) 
    { 
     cout<<opp-hash<<endl; 
    } 
} 

이 문제의 제한 시간 : 3.000 초 이 조건을 확인하고 테스트하려면 어떻게해야합니까?C++ 런타임 오류? 이 문제를 해결하고 확인하는 방법?

온라인으로 컴퓨터에 제출할 때 런타임 오류가 정확히 어떻게 알 수 있습니까? 런타임 및 메모리를 계산해야합니까?

것은 리눅스에서 C++에서 런타임 및 메모리를 확인하는 방법을 설명해, 내가 GCC 버전 4.4.1 (우분투 4.4.1-4ubuntu9)를 사용하고 있습니다.

time ./myprogram 

이 "진짜"(인간의) 시간이 찍은 얼마나 많은 인쇄, 얼마나 많은 것이다 : 당신이 당신의 프로그램을 컴파일하면

+0

. 특정 컨테스트에서 어떤 상황이 '런타임 오류'로 간주되는지 확인하십시오. –

+0

지정하십시오 : 그것은 말하는가 런타임 오류 (프로그램 충돌) 또는 제한 시간을 초과 않는가? 예 : SPOJ는 이러한 종류의 피드백을 제공합니다. 이 런타임 오류 인 경우, 당신은 당신의 프로그램이 버그/정의되지 않은 동작을 포함하지 않는 확인해야 거라고, 당신은 문제 설명을 이해 한 당신의 코드는 덜 분명 코너 케이스를 처리 할 수 ​​있습니다. 이 시간 제한을 초과하는 경우, 당신은 아마 당신이 작업에 대한 충분한 복잡성과 알고리즘을 사용하여 (그리고 차선의 방법으로 일반적으로 일을하지 않음) 여부를 고려해야 할 것입니다. – visitor

+0

I/O 및 표준 입력을 사용하고 있습니다. 입력은 어디서 오는가? –

답변

1

, 유닉스 프로그램 time으로 실행하여 실행 시간을 확인 CPU (활성 처리) 시간.

프로그램에서 사용하는 메모리 양을 확인하려면 디버거에서 실행하고 메모리 사용을 검사 할 위치에 중단 점을 설정하거나 코드에 sleep()을 길게 넣고 디버거없이 실행하십시오. 그럼 당신은 많은 메모리 (가상 주민 등) 프로그램에서 사용하고 있습니다 방식을 볼 수 ps 또는 top 같은 도구를 사용할 수 있습니다.

보다 구체적인 또는 콘테스트 당신이 코드를 제출하는 것입니다
관련 문제