Archive | ACM-ICPC RSS feed for this section

9 October 2011 Comments Off

Call for contest: Daffodil Pre-ACM Computer Programming Contest 2011 (Bangladesh)

Call for contest: Daffodil Pre-ACM Computer Programming Contest 2011 (Bangladesh)

Daffodil International University is organizing Daffodil Pre-ACM Computer Programming Contest (Daffodil PACM2011) to give a platform for the young talents to come together for the next generation ICT developments.

Participants
A maximum of 50-60 teams from different universities all over the country will be participating in Daffodil PACM2011. Each team consists of three contestants. Each contestant must be a student enrolled in a degree program at the participating institution with at least a half-time load. After registration, in case of absolute necessity only one
substitution in a team can be made and the new member must be eligible for the contest, which must be confirmed prior
to two days before the contest.
A representative of the participating university, typically a faculty member, must serve as or designated as the team
coach. The team coach certifies the eligibility of contestants and serves as the official point-of-contact with the team,
prior to and during contest activities. Participating universities will be issued an invitation letter by postal mail.

Registration Procedure
• Registration should be completed online at ACM ICPC website at http://cm2prod.baylor.edu/login.jsf and
for onsite, either download the registration form at http://www.daffodilvarsity.edu.bd/pacm2011/ or use
the official copy sent at the university. Take a print out and after filling up the registration form send at
Department of CSE/CS/CIS, Daffodil International University, House 102, Shukrabad, Mirpur Road, Dhaka
1207 . In either case, online registration is mandatory. In case of problems, please contact as follows.
• The Registrar or the Dean of the Faculty or the Head of the department of the institution, along with the
official seal, has to authorize each registration form.
• Authorized registration form must be sent by postal mail or delivered directly towards the contact persons as
outlined in contact section or to the Department Office.
• Registration Fee: Tk. 2,000.00 (Two Thousand Taka) (Cash / Pay-order in favor of Daffodil
International University)
Important Dates
• Registration Opens: 12 October, 2011
• Last date of registration: 24 October, 2011
• Mock Contest: Saturday: 29 October, 2011
• Contest : Saturday 29 October, 2011

Number of Teams
a) Every university participating in International Collegiate Programming Contest (ICPC), Dhaka Regional Final
2011 will get at least one team.
b) No University will get more than 3 (three) teams.
c) For any university extra N team(s) will get the chance to participate, where N = number of teams in the rank list
in ICPC 2010.
d) For any university extra one team will get the chance to participate if at least one team (excluding the teams that
came in the rank list) solves a problem in ICPC 2010.
Daffodil Pre-ACM Computer Programming Contest 2011
House 102, Shukrabad, Mirpur Road, Dhaka 1207, Bangladesh
Tel: 8130864, 8129177, 9131947, 8129348 Ext 153 Fax: 9131947
www.daffodilvarsity.edu.bd
e) Any university who hasn’t participated in ICPC 2010 contests may get one team depending on the availability (at
most 60 teams will be allowed).
f) The program committee reserves all the rights to accept or reject any additional teams after fulfilling the abovementioned
criterion.
g) The contest hosting university may be allowed to additional teams, which will be decided by program
committee.
Daffodil PACM2011 Contest
All problems will be set in English and there will be approximately 8-10 problems for the contest duration of 5 hours.
The contestant is allowed to solve the problem in any of the allowed programming language. Contestant may bring
printed resource materials but not any machine-readable source. The contestants will not be allowed to use any form of
electronic means or any device to help in the computation.
For unavoidable circumstances, the Organizing Committee may change the contest duration.
Computing Environment
Only one computer will be allocated for each team in the contest. The operating system for the contest will be windows
XP. The programming languages allowed in the contest are C, C++, Java, Visual C++ and JCreator will be provided as
an editor for corresponding languages. PC^2 judging tool will be used to submit the solutions.

Contact Persons s
Dr Syed Akhter Hossain
Professor and Head
Department of Computer Science & Engineering
Tel: 8130864, 8129177, 9131947, 8129348 Ext 153
Fax: 9131947
Mob: 0187 382645
Email: aktarhossain@daffodilvarsity.edu.bd
Mr Kamanashis Biswas, Md Zahidul Karim, Md. Nazmul Haque and Md Samiullah
Department of Computer Science & Engineering
Tel: 8130864, 8129177, 9131947, 8129348 Ext 122
Email: ananda@daffodilvarsity.edu.bd; nazmul@daffodilvarsity.edu.bd
Md Nadir Bin Ali
Senior Asstt Director – IT
Tel: 8130864, 8129177, 9131947, 8129348 Ext 116
Mob: 01713493070
Email: it@daffodilvarsity.edu.bd
Daffodil Pre-ACM Computer Programming Contest 2011
House 102, Shukrabad, Mirpur Road, Dhaka 1207, Bangladesh
Tel: 8130864, 8129177, 9131947, 8129348 Ext 153 Fax: 9131947
www.daffodilvarsity.edu.bd
Daffodil Pre-ACM Computer Programming Contest 2011
(Daffodil PACM2011)
Program Schedule (Tentative)
Day-1: Friday, October 28, 2011
Time Event Venue
11:00 – 13:00 Registration and Kit Collection Daffodil Main Campus
15:00 – 17:00 Registration and Kit Collection Daffodil Main Campus
Day-2: Saturday, October 29, 2011
Time Event Venue
8:00am – 8:45am Reporting at Site Daffodil Campus
9:00am – 2:00pm Daffodil PACM 2011 Contest Daffodil Campus
2:30pm – 3:30pm Lunch Daffodil Campus
4:00pm – 5:00pm Prize Giving Ceremony Daffodil Campus

Venue
Daffodil International University
House 102, Shukrabad
Mirpur Road
Dhaka 1207
Tel: 8130864, 8129177, 9131947, 8129348 Ext 153
Fax: 9131947
Mob: 0187 382645
Contest URL: http://www.daffodilvarsity.edu.bd/pacm2011/
Daffodil Pre-ACM Computer Programming Contest 2011
House 102, Shukrabad, Mirpur Road, Dhaka 1207, Bangladesh
Tel: 8130864, 8129177, 9131947, 8129348 Ext 153 Fax: 9131947
www.daffodilvarsity.edu.bd

Contest Rules
Welcome! contestants from 30 different universities to battle for problem sloving. This
morning is welcoming you to solve 9 problems in 300 minutes.
• Each team has access to one computer work station with a set of independent
problems which may be solved in any order.
• Teams are not allowed to use any kind of electronics including USB, cell phone
etc along with the Internet.
• The contest runs for five hours and consists of nine problems. Scores are available
on-line to contestants and to spectators, except that they are not updated during
the last hour of the contest (so as to ensure suspense about the final rankings).
• Don’t write team name in your code. In this case, actual verdict will not be
provided and your submission will be penalized.
• For any questions about the problems, you can send your clarifications through
PC^2. You must not ask any irrelevant questions. Judges can take any decision
even can disqualify your team.
• In case of problem with network or system, please seek help of volunteers and
system supports and have patience.
• While giving printout of code, please write your team ID above the code and the
volunteer will give you the printed paper based on team ID.

http://www.daffodilvarsity.edu.bd/pacm2011/

3 October 2011 Comments Off

13 tips on how to comment your source code

This article was written by José M. Aguilar in Spanish on his excellent blog Variable Not Found, and was translated, edited and republished here by Timm Martin (and Google Translator) with permission from Mr. Aguilar.

Following are 13 tips on how to comment your source code so that it is easier to understand and maintain over time.

1. Comment each level

Comment each code block, using a uniform approach for each level.  For example:

  • For each class, include a brief description, author and date of last modification
  • For each method, include a description of its purpose, functions, parameters and results

Adopting comment standards is important when working with a team.  Of course, it is acceptable and even advisable to use comment conventions and tools (such as XML in C# or Javadoc for Java) to facilitate this task.

2. Use paragraph comments

Break code blocks into multiple “paragraphs” that each perform a single task, then add a comment at the beginning of each block to instruct the reader on what is about to happen.

// Check that all data records
// are correct
foreach (Record record in records)
{
if (rec.checkStatus()==Status.OK)
{
. . .
}
}
// Now we begin to perform
// transactions
Context ctx = new ApplicationContext();
ctx.BeginTransaction();
. . .

3. Align comments in consecutive lines

For multiple lines of code with trailing comments, align the comments so they will be easy to read.

const MAX_ITEMS = 10; // maximum number of packets
const MASK = 0x1F;    // mask bit TCP

Some developers use tabs to align comments, while others use spaces.  Because tab stops can vary among editors and IDEs, the best approach is to use spaces.

4. Don’t insult the reader’s intelligence

Avoid obvious comments such as:

if (a == 5)      // if a equals 5
counter = 0; // set the counter to zero

This wastes your time writing needless comments and distracts the reader with details that can be easily deduced from the code.

5. Be polite

Avoid rude comments like, “Notice the stupid user has entered a negative number,” or “This fixes the side effect produced by the pathetically inept implementation of the initial developer.” Such comments do not reflect well upon their author, and you never know who may read these comments in the future: your boss, a customer, or the pathetically inept developer you just insulted.

6. Get to the point

Don’t write more in comments than is needed to convey the idea.  Avoid ASCII art, jokes, poetry and hyperverbosity.  In short, keep the comments simple and direct.

7. Use a consistent style

Some people believe that comments should be written so that non-programmers can understand them.  Others believe that comments should be directed at developers only.  In any event, as stated in Successful Strategies for Commenting Code, what matters is that comments are consistent and always targeted to the same audience.  Personally, I doubt many non-developers will be reading code, so comments should target other developers.

8. Use special tags for internal use

When working on code as a team, adopt a consistent set of tags to communicate among programmers.  For example, many teams use a “TODO:” tag to indicate a section of code that requires additional work:

int Estimate(int x, int y)
{
// TODO: implement the calculations
return 0;
}

Tag comments don’t explain code; rather they seek attention or deliver a message.  But if you use this technique, remember to follow up and actually do what the message is asking.

9. Comment code while writing it

Add comments while you write code and it’s fresh in your memory.  If you leave comments until the end, it will take you twice as long, if you do it at all.  “I have no time to comment,” “I’m in a hurry,” and “The project is delayed” are all simply excuses to avoid documenting your code.  Some developers believe you should write comments before code as a way to plan out your ultimate solution.  For example:

public void ProcessOrder()
{
// Make sure the products are available
// Check that the customer is valid
// Send the order to the store
// Generate bill
}

10. Write comments as if they were for you (in fact, they are)

When it comes to commenting code, think not only about the developers who will maintain your code in the future, but also think about yourself.  In the words of the great Phil Haack:

“As soon as a line of code is laid on the screen, you’re in maintenance mode on that piece of code.”

As a result, we ourselves will be the first beneficiaries (or victims) of our good (or bad) comments.

11. Update comments when you update the code

There is no point in commenting correctly on code if the comments are not changed with the code.  Both code and comments must move in parallel, otherwise the comments will actually make life more difficult for developers who maintain your code.  Pay special attention to refactoring tools that automatically update code but leave comments unchanged and hence obsolete in the same instant.

12. The golden rule of comments: readable code

One of the basic principles for many developers: Let your code speak for itself. Although one suspects this movement is led by programmers who do not like to write comments, it is true that self-explanatory code can go a long way toward making code that’s easier to understand and can even render comments unnecessary.  For example, the code in my Fluid Interfaces article shows how clear self-explanatory code can be:

Calculator calc = new Calculator();
calc.Set(0);
calc.Add(10);
calc.Multiply(2);
calc.Subtract(4);
Console.WriteLine( "Result: {0}", calc.Get() );

In this example, comments are not needed and would likely violate tip #4.  To facilitate readable code, you might consider using proper names (as described in the classic Ottinger’s Rules), ensure correct indentation, and adopt coding style guides.  Failure to comply with this tip may result in comments that seem to apologize for bad code.

13. Share these tips with your colleagues

Although tip #10 shows how we ourselves benefit immediately from good comments, these tips will benefit all developers, especially in the context of team working together.  Therefore, feel free to share these commenting tips with your colleagues to create code that is easier to understand and maintain.

Tags: ,
26 September 2011 Comments Off

Unofficial Ranklist of SUST Contest (Bangladesh), 2011

This result is unofficial and unverified. Collected from cuetcoders@yahoogroups.com

Rank Name Solved Time Total att/solv
1 RETURN_OF_THE_CROWS 6 866 15/6
2 SUST_PROTTUTGOTO 5 556 12/5
3 DU_RESONANCE 5 570 8/5
4 SUST_PALINDROME 5 693 6/5
5 BUET_AETERNITAS 5 705/ td> 9/5
6 BUET_DYNAMITES 4 414 11/4
7 DU_ILLUMINATOR 4 457 5/4
8 BUET_JA_ISSA_TAI 4 544 12/4
9 SUST_ATTOPROTTOYEE 4 627 10/4
10 DU_HAU_MAU_KHAU 3 281 16/3
11 INFINITUM-NIHIL 3 384 10/3
12 ELIMINATOR 3 430 14/3
13 SEU_FALLEN_PRIME 3 454 5/3
14 DU_PROXIMA_CENTAURI 3 507 6/3
15 BUET_HAPPY-GO-LUCKY 3 534 8/3
16 NSU_ARDENT 3 590 6/3
17 UIU_SURGE 3 690 12/3
18 DU_ARMY_ANTS_RELOADE 2 100 5/2
19 BUET_ASYMPTOTES 2 140 15/2
20 NSU_WARSHEEP 2 237 2/2
21 IU_CSE_FREEDOM71 2 253 8/2
22 SUB_TRILOGY 2 260 5/2
23 DCC_SPARTA 2 303 9/2
24 SUST_CHAMELEONS 2 310 3/2
25 KERNEL 2 313 6/2
26 DUET_SPARKLE 2 318 8/2
27 DCC_MEGA_MIN D 2 357 7/2
28 JU_PRANTIK 1 7 9/1
29 EWU_CTRLPLUSZ 1 9 3/1
30 STUBBORNS 1 10 1/1
30 SUST_ANONYMOUS 1 10 1/1
30 SUST_INCREDIBLE 1 10 4/1
30 UAP_CRUSHOVERRIDE 1 10 2/1
34 NSU_STRIKERS 1 11 1/1
35 CU_CRUSNIC 1 12 3/1
3 5 JU_DAMAGE_PLAN 1 12 3/1
35 SOFT 1 12 3/1
35 SUST_SANNINS 1 12 4/1
39 SEC-BUILDER 1 13 3/1
40 SEU_BROKEN_DREAMS 1 15
40 SUST_DREAMERS 1 15 2/1
40 SUST_SWAPNOPOTHIK 1 15 4/1
43 SEU_911 1 16 1/1
44 EWU_BAD_BOYZ 1 17 4/1 /td>
44 IIUC_THREEVUJ 1 17 6/1
44 SUB_EPSILONS 1 17 2/1
47 NSU_CODE_JAMMERS 1 18 4/1
48 BGC_JUMPSTART 1 20 1/1
48 IITDU_PIONEERS 1 20 8/1
48 MIST_for_a_while 1 20 7/1
48 NOTHING_JU 1 20 2/1
48 SUST_DARK_HORSE 1 20 7/1
53 AUST_UNBREAKABLE 1 21 4/1
54 UIU_SALIENT 1 23 1/1
55 LU_TIGERS 1 24 1/1
55 SUB_PLODDER 1 24 7/1
57 SUST_BUTTERFLIES 1 25 2/1
58 SUST_UNTITLED 1 26/ td> 4/1
59 RUET_ABNORMALZ 1 27 11/1
60 BRACU_BYTE 1 32 7/1
60 UAP_ANGELS 1 32 4/1
62 SUST_AMEATURE 1 33 6/1
63 SUB-OPROTTASHITO 1 35 1/1
64 AIUB_HYPERDRIVES 1 37 2/1
65 SUST_RAY 1 38 1/1
66 MU_18_SPARKS 1 39 4/1
67 AUST_RADIANT S 1 42 3/1
68 NSU_THREE 1 44 1/1
69 EXPLOSIVE 1 53 2/1
70 MU_CHONNOCHARA 1 54 3/1
71 CU_WRAPPER 1 57 3/1
72 IU_NATUN_SHAKAL 1 64 3/1
73 DIU-HARBINGER 1 67 1/1
74 RUET_UNTRACEABLE 1 69 13/1
75 BRACU_EAGLES 1 74 5/1
76 SUST_UDDOMY 1 78 2/1
77 SILICON-CREWS 1 81 5/1
78 LU_LIONS 1 87 3/1
79 PSTU_DESERTCREATOR 1 97 3/1
80 DECIPHER 1 99 4/1
81 SEC-ALIENS 1 100 1/1
82 CU_ABACUS 1 104 15/1
83 JNU-DYNAMITE 1 105 1/1
84 SADAMATA 1 124 6/1/ td>
85 SUST_ECSTASY 1 135 7/1
86 SEC_TIN-YEARI 1 141 12/1
87 SEC_KNIGHTRIDERS 1 143 4/1
88 AUST_3IDIOTS 1 166 20/1
89 IU_CSE_3DIMENSION 1 175 7/1
90 BGC_OPROKASHITO 1 191 1/1
91 DROID_AUST 1 200 7/1
92 SYSTEM32 1 305 4/1
93 CRACKERZ 1 311 8/1
94 ICT_ANTI-VIRUS 0 0 0/0
94 ICT_HUNTERS 0 0 0/0
94 ICT_VIRUS 0 0 7/0
94 LU_NEOPHYTE 0 0 0/0
94 SEC-FIGHTER 0 03/–
94 SIU_TEAM 0 0 2/0
94 SUB-RECURRENCE 0 0 2/0
94 ULAB_PATICODERS 0 0 4/0
Submitted/1st Yes/Total Yes 536/152
Tags: , , ,
1 September 2011 Comments Off

Offtopic! PhD comics….

Tags:
16 July 2011 Comments Off

Bunch of Programming Judges…

Some of the online judges designed for programming course are:

  • Moodle Online Judge Plugin, an assignment type for Moodle, which can automatically grade C/C++ assignments.
  • HUSTOJ, HUST Online Judge,C/C++/Pascal/Java/Ruby/Bash/Python supported, an open source OJ system using GPL2.0 license, which support LiveCD mode and FPS format.
  • FPS, Free Problem Set, an open source problemset exchange format based on XML, which providing more than 400 free problems in FPS format.
Tags: ,
15 July 2011 1 Comment

New online judge in Bangladesh

A new online judge is going to start from Bangladesh which is now in test purpose open. This site is developed and owned by Jan-e-Alam, Graduate from DU and he is also an employee of Google. The site, temporarily used for AIUB and DU students practice is better than most of the sites available. You can also solve problem there.

Website: http://180.211.224.73/lightoj/login_main.php

For getting username/pass, mail to jan876_du@yahoo.com with your identity.

(News source: http://groups.yahoo.com/group/cuetcoders/)

Tags: , , ,