- 学姐的清晨问候
- 2014-11-01 22:13:21 @
ac率奇低
16 条评论
-
卢泽宁 LV 8 @ 2015-11-04 07:55:48
真是好水的题目。。第一遍以为只能全部读完数据再输出于是就被坑了。。
-
2014-11-04 17:09:04@
那为什么只是对前四个点
-
2014-11-04 17:00:26@
这个题数据怎么看
-
2014-11-04 10:11:49@
var
s:string;
a:array[1..7]of integer;
i,j,k,len,n,max,ap:integer;
begin
readln(n);
for i:=1 to n do
begin
readln(s);
ap:=0;
max:=0;
fillchar(a,sizeof(a),0);
len:=length(s);
for j:=1 to len do
begin
k:=ord(s[j]);
case k of
32:ap:=ap+1;
103:a[1]:=a[1]+1;
111:a[2]:=a[2]+1;
100:a[3]:=a[3]+1;
109:a[4]:=a[4]+1;
114:a[5]:=a[5]+1;
110:a[6]:=a[6]+1;
105:a[7]:=a[7]+1;
end;
end;
k:=1;
while k<>0 do
if (ap>0)and(a[1]>=2)and(a[2]>=3)and(a[3]>=1)and(a[4]>=1)and(a[5]>=1)and(a[6]>=2)and(a[7]>=1) then
begin
max:=max+1;
ap:=ap-1;
a[1]:=a[1]-2;
a[2]:=a[2]-3;
a[3]:=a[3]-1;
a[4]:=a[4]-1;
a[5]:=a[5]-1;
a[6]:=a[6]-2;
a[7]:=a[7]-1;
end
else
k:=0;
writeln('Case #',i,': ',max);
end;
end.
哪错了谢谢 -
2014-11-04 10:09:08@
前四个对了,说明错了什么
-
2014-11-03 21:33:54@
话说我当时做的时候纠结了好久,一直在判断这道题背后是不是有大坑
结果tm真是农夫山泉 -
2014-11-03 19:56:04@
这个题改了吗
为什么还是40 只有前四个点 -
2014-11-03 18:39:03@
其实很简单,只要读入一遍,然后根据各个字符的数量转换再取最小值就可以了:(评测机大神请别吐槽本蒟蒻了...)
var s:ansistring;
i,t,l,xx,y,ans:longint;
data:array[1..1001]of longint;
begin
readln(t);
for xx:=1 to t do
begin fillchar(data,sizeof(data),0);
readln(s);
ans:=maxlongint;
l:=length(s);
for i:=1 to l do
if s[i]='g' then inc(data[1])else
if s[i]='o' then inc(data[2])else
if s[i]='d' then inc(data[3])else
if s[i]='m' then inc(data[4])else
if s[i]='r' then inc(data[5])else
if s[i]='n' then inc(data[6])else
if s[i]='i' then inc(data[7])else
if s[i]=' ' then inc(data[8]);
data[1]:=data[1]div 2;
data[2]:=data[2]div 3;
data[6]:=data[6]div 2;
for i:=1 to 8 do if data[i]<ans then ans:=data[i];
writeln('Case #',xx,': ',ans);
end;
end. -
2014-11-03 17:15:51@
空格可以无数次使用吗
-
2014-11-02 11:17:10@
var a:array['a'..'z'] of longint;
n,i,k,s:longint;
j:char;
b:ansistring;
begin
readln(n);
for i:=1 to n do
begin
readln(b);
for j:='a' to 'z' do
a[j]:=0;
s:=0;
for k:=1 to length(b) do
begin
if (b[k]>='a') and (b[k]<='z') then a[b[k]]:=a[b[k]]+1 else if b[k]=' ' then s:=s+1;
end;
if a['g'] div 2<s then s:=a['g'] div 2;
if a['o'] div 3<s then s:=a['o'] div 2;
if a['d']<s then s:=a['d'];
if a['m']<s then s:=a['m'];
if a['r']<s then s:=a['r'];
if a['n'] div 2<s then s:=a['n'] div 2;
if a['i']<s then s:=a['i'];
writeln('Case #',i,': ',s);
end;
end.
哪错了? -
2014-11-01 22:21:01@
写std的人太粗心了!
-
2014-11-01 22:20:40@
twd2检查std后个人感觉std是错的,所以数据也是错的,正在准备修改数据重测,给您带来的不便请谅解。
-
2014-11-01 22:20:08@
我只是不明白问什么不给严格定义
只有几个例子 -
2014-11-01 22:19:38@
同,难道又是数据问题?
-
2014-11-01 22:17:41@
我跟你错的点都一样。。
-
2014-11-01 22:17:24@
为什么最高分40……………………
- 1
信息
- ID
- 1902
- 难度
- 7
- 分类
- (无)
- 标签
- (无)
- 递交数
- 1572
- 已通过
- 340
- 通过率
- 22%
- 被复制
- 6
- 上传者