C2 제4 차 숙제 문제 풀이 보고서
2860 단어 숙제.
http://www.cnblogs.com/newbe/
http://www.cnblogs.com/newbe/p/4069834.html
http://www.cnblogs.com/newbe/p/4072005.html
제발 축하 해!!!
http://www.cnblogs.com/newbe/p/4058097.html
부 드 러 운 선생님 은 너무 독 하 셔 서 같은 수업 에 목숨 이 다른 우 리 를 불 쌍 히 여 겨 주세요~문장 말미 의 추천 같은 것 을 주문 하 세 요.답장 같은 것 이 있 으 면 더 좋 을 것 같 아 요!
1.다항식 연산
할 말 이 없습니다.어 려 운 점 은 주로 읽 기 부분 에 있 습 니 다.사실은 간단 한 시 뮬 레이 션 입 니 다.sscanf 를 사용 하여 문자열 에서 읽 기 를 포맷 할 수 있 습 니 다.각 항목 의 종 류 는%dx%d 입 니 다."x%d;%dx;x;%d;잘 판단 해 주세요.+-번호 같은 거 는 OK.
2.정렬 선택
흔히 말 하 는 문제,n 은 9 밖 에 안 되 는데 단순히 깊이 검색 하면 됩 니 다.vis[]기록 이 이미 나 타 났 는 지,res[]기록 은 각각 몇 명 입 니까?도대체 출력 을 찾 습 니 다.
3.배수 구하 기
네 번 째 상대 적 으로 기술적 함량 이 있 는 문 제 는 답 이 500 명 이 므 로 템 플 릿 세트 폭력 으로 해결 할 수 없다.
사실 1<=N<=4999 에서 알 수 있 듯 이 이것 은 구조 문제 로 지 정 된 digit 로 N 의 배수 수 를 구성 하 는 것 이다.
구조 과정 에서%N 이 0 이 아 닌 상황 이 발생 할 수 있 습 니 다.그러면 특정한 구조 에서 그의%N 이 x 라 고 가정 합 니 다!=0.그러면 이 숫자 에서 아래로 구 조 를 계속 할 때 뒷 자리 가 Y 라 고 가정 하면 새로운 숫자%N=(x*10+y)%N
그러면 알 수 있 듯 이 우 리 는%N 의 나머지 로 시간 복잡 도 를 제한 할 수 있 습 니 다.주어진 나머지 가 같은 x 의 다른 숫자 이기 때문에 뒤로 계속 구 조 를 할 때 발생 하 는 수의 나머지 서열 은 똑 같 고 중복 되 는 작업 을 한 것 과 같 습 니 다.그러면 우 리 는 다음 구조 가 나 온 나머지 가 이전에 나타 나 지 않 았 다 는 것 을 확보 하면 광 수 를 이용 하여 이 문 제 를 해결 할 수 있 습 니 다.
4.중복 수 전체 배열
처음에는 상투적인 문제 라 고 생각 했 지만 too young 으로 인해 문자열 의 길 이 는 100 보다 작 았 다.
시간 초과 코드 를 붙 여 주세요.짧 은 배열 만 해결 할 수 있 습 니 다.
#include <stdio.h>
#include <stdlib.h>
#include <math.h>
#include <string.h>
#define RD(x) scanf("%d",&x)
#define RD2(x,y) scanf("%d%d",&x,&y)
#define clr0(x) memset(x,0,sizeof(x))
typedef long long LL;
int n,vis[1005];
char s[1005],ans[1005];
void dfs(int now){
int i;
if(now == n){
ans[now] = '\0';
puts(ans);
return;
}
int pre=-1;
for(i=0;i<n;++i)
{
if(!vis[i] && s[i]!=pre)
{
vis[i]=1;
ans[now]=s[i];
pre=s[i];
dfs(now+1);
vis[i]=0;
}
}
}
void work()
{
scanf("%s",s);
n = strlen(s);
clr0(vis);
dfs(0);
}
int main()
{
work();
return 0;
}
사실 해결 하기 어렵 지 않 습 니 다.맵 을 열 어 26 글자 에 해당 하 는 개 수 를 기록 하면 dfs 전에 해당 하 는 문자 가 있 는 지 확인 하고 cnt-,dfs 완료 후+돌아 오 면 됩 니 다.
5.행렬 곱셈 A
또 이런 이상 한 입력 문 제 는 중간 에 빈 줄 이 있 기 때문에 어 려 운 점 이 없 기 때문에 sscanf 로 쉽게 해결 할 수 있 습 니 다.
이 내용에 흥미가 있습니까?
현재 기사가 여러분의 문제를 해결하지 못하는 경우 AI 엔진은 머신러닝 분석(스마트 모델이 방금 만들어져 부정확한 경우가 있을 수 있음)을 통해 가장 유사한 기사를 추천합니다:
Linux crontab 자동 정시 실행 명령 학습WIKI:crontab 명령 은 유 닉 스 와 유 닉 스 의 운영 체제 에서 흔히 볼 수 있 으 며 주기 적 으로 실 행 된 명령 을 설정 하 는 데 사용 된다.이 명령 은 표준 입력 장치 에서 명령 을 읽 고 나중...
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
CC BY-SA 2.5, CC BY-SA 3.0 및 CC BY-SA 4.0에 따라 라이센스가 부여됩니다.