fork download
  1. #include<stdio.h>
  2. #include<string.h>
  3. #include<ctype.h>
  4. int l[1001][1001];
  5. char s[1001];
  6. char t[1001];
  7. char path[1000];
  8. int max(int, int);
  9. int findlcs(int, int);
  10. void find_path(int, int, int);
  11. void initialize(char*, int);
  12. int main(void)
  13. {
  14. //freopen("in.txt", "r", stdin);
  15.  
  16. char *parser;
  17. memset(s, 0, sizeof(s));
  18. memset(t, 0, sizeof(t));
  19. int caseNo = 0;
  20. while (gets(s) != NULL)
  21. {
  22. gets(t);
  23. caseNo++;
  24. if (caseNo < 10)
  25. printf(" %d. ", caseNo);
  26. else
  27. printf("%d. ", caseNo);
  28. int m = strlen(s);
  29. int n = strlen(t);
  30. if (m == 0 || n == 0)
  31. printf("Blank!\n");
  32. else
  33. {
  34. initialize(s, m);
  35. initialize(t, n);
  36. int index = findlcs(m, n);
  37. find_path(index, m, n);
  38. int cnt = 0;
  39. parser = strtok(path," ");
  40. while (parser != NULL)
  41. {
  42. cnt++;
  43. parser = strtok(NULL," ");
  44. }
  45. printf("Length of longest match: %d\n",cnt);
  46. memset(path,0,sizeof(path));
  47. memset(s, 0, sizeof(s));
  48. memset(t, 0, sizeof(t));
  49.  
  50. }
  51.  
  52. }
  53. //fclose(stdin);
  54. //while (1);
  55. return 0;
  56. }
  57.  
  58. void initialize(char *a, int m)
  59. {
  60. for (int i = 0; i < m; i++)
  61. {
  62. if (!isalnum(a[i]))
  63. a[i] = 32;
  64.  
  65. }
  66. return;
  67. }
  68. void find_path(int index, int m, int n)
  69. {
  70. path[index] = '\0';
  71. int i = m, j = n;
  72. while (i > 0 && j > 0)
  73. {
  74. if (s[i - 1] == t[j - 1])
  75. {
  76. path[index - 1] = s[i - 1];
  77. i--;
  78. j--;
  79. index--;
  80.  
  81. }
  82. else if (l[i - 1][j] > l[i][j - 1])
  83. i--;
  84. else
  85. j--;
  86. }
  87. return;
  88.  
  89. }
  90. int findlcs(int m, int n)
  91. {
  92. memset(l, 0, sizeof(l));
  93. for (int i = 1; i <= m; i++)
  94. {
  95. for (int j = 1; j <= n; j++)
  96. {
  97. if (s[i - 1] == t[j - 1])
  98. l[i][j] = 1 + l[i - 1][j - 1];
  99. else l[i][j] = max(l[i][j - 1], l[i - 1][j]);
  100. }
  101. }
  102. return l[m][n];
  103.  
  104. }
  105. int max(int a, int b)
  106. {
  107. if (a > b)
  108. return a;
  109. return b;
  110. }
Compilation error #stdin compilation error #stdout 0s 0KB
stdin
Standard input is empty
compilation info
Main.java:1: error: illegal character: \35
#include<stdio.h>
^
Main.java:1: error: class, interface, or enum expected
#include<stdio.h>
        ^
Main.java:2: error: illegal character: \35
#include<string.h>
^
Main.java:3: error: illegal character: \35
#include<ctype.h>
^
Main.java:5: error: class, interface, or enum expected
char s[1001];
^
Main.java:6: error: class, interface, or enum expected
char t[1001];
^
Main.java:7: error: class, interface, or enum expected
char path[1000];
^
Main.java:8: error: class, interface, or enum expected
int max(int, int);
^
Main.java:9: error: class, interface, or enum expected
int findlcs(int, int);
^
Main.java:10: error: class, interface, or enum expected
void find_path(int, int, int);
^
Main.java:11: error: class, interface, or enum expected
void initialize(char*, int);
^
Main.java:12: error: class, interface, or enum expected
int main(void)
^
Main.java:17: error: class, interface, or enum expected
	memset(s, 0, sizeof(s));
	^
Main.java:18: error: class, interface, or enum expected
	memset(t, 0, sizeof(t));
	^
Main.java:19: error: class, interface, or enum expected
	int caseNo = 0;
	^
Main.java:20: error: class, interface, or enum expected
	while (gets(s) != NULL)
	^
Main.java:23: error: class, interface, or enum expected
		caseNo++;
		^
Main.java:24: error: class, interface, or enum expected
		if (caseNo < 10)
		^
Main.java:26: error: class, interface, or enum expected
		else
		^
Main.java:28: error: class, interface, or enum expected
		int m = strlen(s);
		^
Main.java:29: error: class, interface, or enum expected
		int n = strlen(t);
		^
Main.java:30: error: class, interface, or enum expected
		if (m == 0 || n == 0)
		^
Main.java:32: error: class, interface, or enum expected
		else
		^
Main.java:35: error: class, interface, or enum expected
			initialize(t, n);
			^
Main.java:36: error: class, interface, or enum expected
			int index = findlcs(m, n);
			^
Main.java:37: error: class, interface, or enum expected
			find_path(index, m, n);
			^
Main.java:38: error: class, interface, or enum expected
			int cnt = 0;
			^
Main.java:39: error: class, interface, or enum expected
			parser = strtok(path," ");
			^
Main.java:40: error: class, interface, or enum expected
			while (parser != NULL)
			^
Main.java:43: error: class, interface, or enum expected
				parser = strtok(NULL," ");
				^
Main.java:44: error: class, interface, or enum expected
			}
			^
Main.java:46: error: class, interface, or enum expected
			memset(path,0,sizeof(path));
			^
Main.java:47: error: class, interface, or enum expected
			memset(s, 0, sizeof(s));
			^
Main.java:48: error: class, interface, or enum expected
			memset(t, 0, sizeof(t));
			^
Main.java:50: error: class, interface, or enum expected
		}
		^
Main.java:56: error: class, interface, or enum expected
}
^
Main.java:60: error: class, interface, or enum expected
	for (int i = 0; i < m; i++)
	                ^
Main.java:60: error: class, interface, or enum expected
	for (int i = 0; i < m; i++)
	                       ^
Main.java:65: error: class, interface, or enum expected
	}
	^
Main.java:67: error: class, interface, or enum expected
}
^
Main.java:71: error: class, interface, or enum expected
	int i = m, j = n;
	^
Main.java:72: error: class, interface, or enum expected
	while (i > 0 && j > 0)
	^
Main.java:77: error: class, interface, or enum expected
			i--;
			^
Main.java:78: error: class, interface, or enum expected
			j--;
			^
Main.java:79: error: class, interface, or enum expected
			index--;
			^
Main.java:81: error: class, interface, or enum expected
		}
		^
Main.java:84: error: class, interface, or enum expected
		else
		^
Main.java:86: error: class, interface, or enum expected
	}
	^
Main.java:89: error: class, interface, or enum expected
}
^
Main.java:93: error: class, interface, or enum expected
	for (int i = 1; i <= m; i++)
	^
Main.java:93: error: class, interface, or enum expected
	for (int i = 1; i <= m; i++)
	                ^
Main.java:93: error: class, interface, or enum expected
	for (int i = 1; i <= m; i++)
	                        ^
Main.java:95: error: class, interface, or enum expected
		for (int j = 1; j <= n; j++)
		                ^
Main.java:95: error: class, interface, or enum expected
		for (int j = 1; j <= n; j++)
		                        ^
Main.java:99: error: class, interface, or enum expected
			else l[i][j] = max(l[i][j - 1], l[i - 1][j]);
			^
Main.java:100: error: class, interface, or enum expected
		}
		^
Main.java:104: error: class, interface, or enum expected
}
^
Main.java:109: error: class, interface, or enum expected
	return b;
	^
Main.java:110: error: class, interface, or enum expected
}
^
59 errors
stdout
Standard output is empty