作者myjackchen (哥)
站内Programming
标题[请益] 一个简单题却...
时间Fri Oct 14 13:47:38 2011
codeforce的 71A
http://codeforces.com/problemset/problem/71/A
我的程式短所以直接贴了
#include <stdlib.h>
#include <stdio.h>
int main(){
int num;
scanf("%d",&num);fflush(stdin);
char table[num][1000];
int i,j = 0;
for(i=0;i<num;i++){
while((table[i][j++] = getchar()) != '\n');
table[i][j-1] = '\0';
if((j-1)>10){
printf("%c%d%c\n",table[i][0],j-3,table[i][j-2]);
}
else{
printf("%s\n",&table[i][0]);
}j = 0;
}
return 0;
}
第一个测资就time limit exceed 实在是......
所以应该可以再优化
但我实在想不出来
所以上来请教各位了
--
※ 发信站 :批踢踢实业坊(ptt.cc)
◆ From: 140.112.243.180
1F:→ priv:为了玩这个第一次用codeforce 140.113.23.102 10/14 15:46
2F:→ priv:我发现他stdin和我想得不一样 140.113.23.102 10/14 15:46
3F:→ priv:要用unix的\n写成text file然後用<喂 140.113.23.102 10/14 15:46
4F:→ priv:一开始一直写成cr/lf compatible一直印乱码XD 140.113.23.102 10/14 15:47
5F:→ priv:你的作法flush完所有的输入都会被flush掉 140.113.23.102 10/14 15:47
6F:→ priv:所以不是optimize的问题,再改一下吧 140.113.23.102 10/14 15:48
7F:推 bemyself:我试试看^^140.112.243.180 10/14 19:27
8F:推 bemyself:成功了!!设一个char c吃收num时键入的\n!140.112.243.180 10/14 19:34
9F:→ lantw44:fflush(stdin);只能用在 DOS/Windows 123.204.44.162 10/15 15:52
10F:推 priv:他有vc++可以选,主要还是输入方式的差别 1.200.15.73 10/15 19:46
11F:→ onlyeric23:while那边 直接用scanf 180.177.41.177 10/16 19:41
12F:推 s864372002:lan的观念不对啊,跟OS无关,fflush是175.180.241.220 10/16 20:04
13F:→ s864372002:把buffer里面的东西强迫flush掉。175.180.241.220 10/16 20:05
14F:推 bemyself:有学到东西!!140.112.243.180 10/17 03:35
15F:推 legnaleurc:... fflush 不能用在 stdin 114.37.48.95 10/17 04:00
16F:→ legnaleurc:那是 VC 的 extension 114.37.48.95 10/17 04:01