#include <iostream> #include <cstdio> #include <cstring> using namespace std; int main() { char a[60]; char b[60]; int score; while(scanf("%s",a)!=EOF){ if (!strcmp(a,"END")) return 0; scanf("%s",b); cin>>score; int flag1=0,flag2=0; for(int i=0;i<40;i++){ if(a[i]=='X') flag1++; if(a[i]==b[i]){ flag2++; } } if(flag1==0&&score==flag2) cout<<"Absolute"<<endl; else if(flag1&&(flag2<=score&&score<=(flag1+flag2))) cout<<"Possible"<<endl; else cout<<"Wrong"<<endl; } }
2.
#include <iostream> #include <cstdio> #include <cstring> using namespace std; int ans; int change(int k){ ans=1; ??? while(k){ ans=ans*(k%10); k=k/10; } return ans; } int main() { int n; while(cin>>n&&n){ while(n>9){ cout<<n<<" "; n = change(n);} cout<<n<<endl; } }
#include <iostream> #include <cstdio> using namespace std; int T; double a,b; double num[15]; double cal(int x,double y){ double tmp = 1; for(int i=0;i<=x;i++) tmp=tmp*y; return tmp; } int main() { while(cin>>T){ if(T==-1) return 0; for(int i=0;i<=T;i++){ cin>>num[i]; } scanf("%lf%lf",&a,&b); for(int i=0;i<=T;i++){ num[i]=num[i]*(1/(double(i+1))); } double up = 0; double down = 0; for(int i=0;i<=T;i++){ up+=num[i]*cal(i,b); down+=num[i]*cal(i,a); } printf("%.2lf ",up-down); } return 0; }
#include <iostream> #include <cstdio> using namespace std; float num[15]; float cal(int x,float y){ float tmp = 1; for(int i=0;i<=x;i++) tmp=tmp*y; return tmp; } int main() { float a,b; int T; while(cin>>T){ if(T==-1) return 0; for(int i=0;i<=T;i++){ cin>>num[i]; } scanf("%lf%lf",&a,&b); for(int i=0;i<=T;i++){ num[i]=num[i]*(1/(float(i+1))); } float up = 0; float down = 0; for(int i=0;i<=T;i++){ up+=num[i]*cal(i,b); down+=num[i]*cal(i,a); } printf("%.2lf ",up-down); } return 0; }4.
#include <iostream> #include<cstring> #include<cstdio> using namespace std; void change(int x){ switch(x){ case 15: printf("F"); break; case 14: printf("E"); break; case 13: printf("D"); break; case 12: printf("C"); break; case 11: printf("B"); break; case 10: printf("A"); break; default: printf("%d",x); }} int main(){ int n,l1,l2,i,j,k; char s1[1005],s2[1005]; while(scanf("%d",&n)!=EOF){ int a[1100]={0}; int b[1100]={0}; scanf("%s%s",s1,s2); l1 = strlen(s1); l2 = strlen(s2); if(l1>=l2) k=l1; else k=l2; for(i=k,j=l1-1;j>=0;i--,j--){ if(s1[j]<='9'&&s1[j]>='0') a[i] = s1[j]-'0'; else if(s1[j]<='F'&&s1[j]>='A') a[i]=s1[j]-'A'+10; else if(s1[j]<='f'&&s1[j]>='a') a[i]=s1[j]-'a'+10; } for(i=k,j=l2-1;j>=0;i--,j--){ if(s2[j]<='9'&&s2[j]>='0') b[i] = s2[j]-'0'; else if(s2[j]<='F'&&s2[j]>='A') b[i] = s2[j]-'A'+10; else if(s2[j]<='f'&&s2[j]>='a') b[i] = s2[j]-'a'+10;} for(i=k;i>0;i--){ a[i]+=b[i]; if(a[i]>n-1){ a[i]-=n; a[i-1]++;} } if (a[0]==0) i=1; else i=0; int flag=1; for (i;i<=k;i++){ if(flag&&a[i]==0) continue; else{ change(a[i]); flag = 0;} } if(flag) cout<<"0"; cout<<endl; cout<<endl; } return 0; }
#include <iostream> using namespace std; int main() { int T; cin>>T; for(int i = 1;i<=T;i++){ int n; cin>>n; int ans = 0; ans=n/2-2; cout<<"Case #"<<i<<":"<<ans<<endl; } }
5.WA的
#include<cstdio> #include<cmath> #include<cstring> #include<algorithm> using namespace std; #define INF 0x3f3f3f3f const int N=1005; int a[N],dp[N][N]; int vis[N]; int main() { int cas=1; int n; while(scanf("%d",&n)!=EOF) { for(int i=1; i<=n; i++) scanf("%d",&a[i]); for(int i=0;i<N;i++) for(int j=0;j<N;j++) dp[i][j]=-INF; for(int i=1;i<=n;i++) dp[i][i]=a[i]; dp[n-1][n]=max(a[n-1],a[n]); for(int i=n-2;i>=0;i--) { for(int j=i+1;j<=n;j++) dp[i][j]=max(dp[i][j-1],max(dp[i+1][j],dp[i+2][j]+a[i])); } printf("Case #%d: %d ",cas++,max(dp[1][n-1],dp[2][n])); } return 0; }
AC:
#include<cstdio> #include<cmath> #include<cstring> #include<algorithm> using namespace std; #define INF 0x3f3f3f3f const int N=1005; int a[N],dp[N][N]; int vis[N]; int main() { int cas=1; int n; while(scanf("%d",&n)!=EOF) { for(int i=1; i<=n; i++) scanf("%d",&a[i]); for(int i=0;i<N;i++) for(int j=0;j<N;j++) dp[i][j]=-INF; for(int i=1;i<=n;i++) dp[i][i]=a[i]; dp[n-1][n]=max(a[n-1],a[n]); for(int i=n-2;i>=0;i--) { for(int j=i+1;j<=n;j++) dp[i][j]=max(dp[i][j-1],max(dp[i+1][j],dp[i+2][j]+a[i])); } printf("Case #%d: %d ",cas++,max(dp[1][n-1],dp[2][n])); } return 0; }