Бодолт илгээх | Бүх бодолтууд | Шилдэг бодолтууд | Жагсаалт руу буцах |
TOP0005 - Бодлогын ангилал |
Топкодер өөрийн бодлогуудаа ангилахаар шийджээ. Ингээд топкодерыг хөгжүүлэгчид бодлогын түвшин нь зөвхөн бодлогын өгүүлбэрт байгаа үгүүдийн дундаж уртаас хамаарна гэж үзсэн. Хэрэв Үгийн Дундаж Урт 3 болон түүнээс бага тоо байвал уг бодлого 250 онооны бодлого байна. Хэрэв Үгийн Дундаж Урт 4 эсвэл 5-тай тэнцүү байвал уг бодлого 500 онооны бодлого байна. Хэрэв Үгийн Дундаж Урт 6 болон түүнээс дээш утгатай бол уг бодлого 1000 онооны бодлого байна. Тодорхойлолт: Токен - хоёр талаасаа хоосон зай эсвэл өгүүлбэрийн эхлэл, төгсгөлөөр хязгаарлагдсан тэмдэгтүүдийн олонлог. Үг - зөвхөн үсэг агуулсан (a-z, A-Z), эцэстээ ганц цэгтэй байж болох Токен. Үг ядаж нэг үсэгтэй байх ёстой. Үгийн урт - Үгэнд орсон үсэгнүүдийн тоо (цэг бол үсэг биш юм). Дараах токенууд нь үг юм: "ab", "ab." Харин эдгээр нь үг биш: "ab..", "a.b", ".ab", "a.b.", "a2b.", "." Үгийн Дундаж Урт - бодлогын өгүүлбэрт байгаа Үгсийн Уртуудын нийлбэрийг Үгсийн нийт тоонд хуваасан харьцаа. Энэ хуваах үйлдэл нь бүхлээр хуваах үйлдэл юм. Хэрэв Үгсийн нийт тоо нь тэгтэй тэнцүү бол Үгийн Дундаж Урт тэгтэй тэнцүү байна. Бодлогын өгүүлбэр өгөгдсөн бол уг бодлогыг хэдэн онооны бодлого болохыг ол. Өгүүлбэрийг зүүнээс баруун тийш боловсруулна.
Input
Бодлогын өгүүлбэр нь 50 хүртлэх тэмдэгтийн урттай, үсэг, тоо, зай, цэг агуулсан тэмдэгт мөр байна.
Output
Бодлогын оноог хэвлэнэ
Example
Input: Implement a class H5 which contains some method. Output: 500
Нэмсэн: | sw40 |
Огноо: | 2007-10-27 |
Хугацааны хязгаарлалт: | 1s |
Эх кодын хэмжээний хязгаарлалт: | 50000B |
Memory limit: | 1536MB |
Cluster: | Cube (Intel G860) |
Програмчлалын хэлүүд: | Бүгд дараах хэлүүдээс бусад: ADA95 ASM64 BASH BF C++ 4.3.2 C99 CLPS CLOJURE D ERL FSHARP GO ICON ICK JS-RHINO LUA NEM NICE NODEJS OCAML PERL6 PIKE PRLG-swi SCALA SCM guile SCM qobi SED ST TCL VB.NET WHITESPACE |
Эх сурвалж: | Топкодер |
hide comments
2020-02-20 11:17:47
sw40 code oo ilgeeheer hurvuuleltiin aldaa zagaad bh ym? #include <iostream> #include <cstring> using namespace std; char st[10001]; int s, q, e, k, l, i, j, a[1001]; int main() { gets (st); l = strlen(st); i = 0; j++; a[j] = 0; while(i < l) { if(st[i] == ' ') { j++; a[j] = i + 1; } i++; } s = 0; q = 0; i = 1; while(i < j) { i++; e = 0; for(k = a[i-1] + 1; k < a[i]; k++) { if(st[k] == '.') { e = 1; break; } } if(e == 0) { s += a[i] - a[i-1] - 1; q++; } } for(k = a[j] + 1; k < l; k++) { if(st[k] == '.') { e = 1; break; } } if(e == 0) { s = s + a[i] - a[i-1] - 1; q++; } if(s / q < 4) cout << "250"; else if(s / q == 4 || s /q == 5) cout << "500"; else cout << "1000"; return 0; } |
|
2013-06-21 07:59:25 freedam
Last edit: 2014-05-02 15:29:25 |
|
2011-02-19 04:17:22 Gankhuu Tsendsuren
|
|
2009-04-22 16:50:20 Нямка
Last edit: 2009-04-22 17:15:32 |