1 条题解

  • 0
    @ 2024-12-24 10:06:03

    C :

    /*
     * =====================================================================================
     *
     *       Filename:  902-3.c
     *
     *    Description:  ihahah
     *
     *        Version:  1.0
     *        Created:  2013/9/3 0:32:01
     *       Revision:  none
     *       Compiler:  gcc
     *
     *         Author:  mdk-vim.cpp-c (mdk), mengdaikun@gmail.com
     *        Company:  cjluacm-vim-mdk
     *
     * =====================================================================================
     */
    #include<stdio.h>
    #include<stdlib.h>
    #include<string.h>
    
    char s[1001];
     
    void reverse(int begin,int end)
    {
        while(begin<end)
        {
            char temp=s[begin];
            s[begin]=s[end];
            s[end]=temp;
            ++begin;
            --end;
        }
    }
     
    int main()
    {
        //freopen("a.in","r",stdin);
        
        while(gets(s))
        {
            int len=strlen(s),begin=0;
            
            reverse(0,len-1);
            
            int i;
    
            for(i=0;i<len;i++)
            {
                if(s[i]!=' ')
                {
                    if(i>0&&s[i-1]==' ')
                        begin=i;
                    else if(i<len-1&&s[i+1]==' ' || i==len-1)
                        reverse(begin,i);
                }
            }
            
            printf("%s\n",s);
        }
        return 0;
    }
     
    
    
    

    Java :

    import java.util.Scanner;
    
    public class Main {
    
    	public static void main(String[] args) {
    		Scanner cin = new Scanner(System.in);
    		while(cin.hasNext())
    		{
    			String str = cin.nextLine();
    			revString(str);
    		}
    	}
    	
    	public static String revString(String str)
    	{
    		StringBuilder builder = new StringBuilder();
    		builder.append("begin ");
    		builder.append(str);
    		builder.append(" end");
    		String []subStrings = builder.toString().split(" ");
    		for(int i= subStrings.length -2 ;i>=2;i-- ){
    			System.out.print(subStrings[i]+" ");
    		}
    		System.out.println(subStrings[1]);
    		return null;
    	}
    
    }
    
    • 1

    信息

    ID
    1850
    时间
    1000ms
    内存
    32MiB
    难度
    (无)
    标签
    递交数
    0
    已通过
    0
    上传者