1 条题解
-
0
C :
/* * ===================================================================================== * * Filename: 903.c * * Description: hahahhaha * * Version: 1.0 * Created: 2013/9/3 星期二 15:11:22 * 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> #include<math.h> #define MAX 2000 int main() { // freopen("a.in","r",stdin); char str[MAX]; int k; int i; int len; while(~scanf("%s %d",str,&k)) { len = strlen(str); for(i = k ; i < len ; i++) printf("%c",str[i]); for(i = 0 ; i < k ; i++) printf("%c",str[i]); printf("\n"); } return 0; }
C++ :
#include <stdio.h> #include "string.h" /////////////////////////////////////////////////////////////////////// // Reverse the string between pStart and pEnd /////////////////////////////////////////////////////////////////////// void ReverseString(char* pStart, char* pEnd) { if(pStart != NULL && pEnd != NULL) { while(pStart <= pEnd) { char temp = *pStart; *pStart = *pEnd; *pEnd = temp; pStart ++; pEnd --; } } } /////////////////////////////////////////////////////////////////////// // Move the first n chars in a string to its end /////////////////////////////////////////////////////////////////////// char* LeftRotateString(char* pStr, unsigned int n) { if(pStr != NULL) { int nLength = static_cast<int>(strlen(pStr)); if(nLength > 0 && n > 0 && n < nLength) { char* pFirstStart = pStr; char* pFirstEnd = pStr + n - 1; char* pSecondStart = pStr + n; char* pSecondEnd = pStr + nLength - 1; // reverse the first part of the string ReverseString(pFirstStart, pFirstEnd); // reverse the second part of the strint ReverseString(pSecondStart, pSecondEnd); // reverse the whole string ReverseString(pFirstStart, pSecondEnd); } } return pStr; } int main() { char s[9999]; int n; while(scanf("%s%d",s,&n)!=EOF) printf("%s\n",LeftRotateString(s,n)); return 0; }
Pascal :
var a:array[1..2000]of char;n,b,i:integer; begin while not eof do begin n:=0; while not eoln do begin n:=n+1; read(a[n]); if a[n]=' ' then break end; readln(b); for i:=b+1 to n-1 do write(a[i]); for i:=1 to b do write(a[i]); writeln end end.
Java :
import java.util.Scanner; public class Main { public static void main(String[] args) { Scanner cinScanner= new Scanner(System.in); while(cinScanner.hasNext()) { String str = cinScanner.next(); int k = cinScanner.nextInt(); reverseString(str, k); } } public static void reverseString(String str,int begin) { for(int i=begin;i<str.length();i++) System.out.print(str.charAt(i)); for(int i=0;i<begin;i++) System.out.print(str.charAt(i)); System.out.println(); } }
- 1
信息
- ID
- 2190
- 时间
- 1000ms
- 内存
- 32MiB
- 难度
- (无)
- 标签
- 递交数
- 0
- 已通过
- 0
- 上传者