JDOJ 2898 삭제 된 질문의 수

루오 구 P1106은 몇 가지 문제를 삭제

https://www.luogu.org/problemnew/show/P1106

JDOJ 2898 : 삭제 대수 문제

https://neooj.com:8082/oldoj/problem.php?id=2898

기술

대한 새로운 S 자리 양수 후 나머지 디지털 원래 순서를 제거 고정밀 N 양의 정수를 입력한다. 소정의 N 및 S의 프로그래밍 솔루션을 찾을 수 있도록 새로운 최소 수의 나머지 자리.
새로운 출력 양의 정수입니다. (N은하게는 240 초과) 입력 데이터가 오류없이 판단된다.

 

입력

[입력]
   N-
   S

산출

  마지막 남은 최소.

샘플 입력

175,438 4

샘플 출력

(13)

힌트

 

예를 들어 175 438 = N-
           S. 4 =
          다음 삭제할 수 :
               . = 175 // 438-N 삭제 7
                   . 15,438 // 삭제 5
                   . 1438 // 삭제 4
                   138 // 삭제 8 개.
                   13 13 // 솔루션

 (A)의 정밀 플러스 욕심 제목입니다.

최소 욕심 전략이 질문은 수의 나머지 부분을 보장하기 위해 그림을 삭제하는 방법입니다.

원칙적으로, 선택의 최대 수는 있지만 분명하지, 삭제합니다.

당신이 그림 기능에 숫자를 할 경우, 당신은 멀리 앞으로 가능한 한 최대의 번호를 삭제해야하지만.

원칙 중 욕심, 다음 단계는 고정밀 코드입니다.

나는 정밀 약한.

하지 추한에 너무 바보 Baji은 코드를 쓰기.

그러나 그는 먼저 허점, 또는 C 언어 목록을 드릴.

AC 코드 :

#INCLUDE <STDIO.H> 
#INCLUDE < 문자열 .H>
  C [ 260 ];
INT 의, CNT;
INT 의 main () 
{ 
    는 scanf ( " % S %의 D ' 는 C, S);
    INT LEN = strlen 함수 (c);
    반면 (s-- ) 
    { 
        위해 ( int로 I = 0 ; I <= len- 2 ; I ++ )
             경우 (c [i]는> C [I + 1 ]) 
            { 
                 ( INT의 J = I, J <= len- 2 ; J ++ )
                    C [J] = C의 [J + 1 ];
                휴식 ; 
            }  - ; 
    } 
    동안 (CNT <= len- 1 개 && C [CNT] == ' 0 ' ) 
        CNT를 ++ ;
    경우 (CNT == LEN) 
        의 printf ( " 0 " );
    다른 
         ( INT의 J = CNT; J <len- = 1 ; J ++ ) 
            의 printf ( " %의 C ' , C [J]); 
    반환  0  ;
}

 

추천

출처www.cnblogs.com/fusiwei/p/11221014.html