Thứ Ba, 21 tháng 6, 2016

Back to High School Physics

Input: standard input
Output: standard output
A particle has initial velocity and constant acceleration. If its velocity after certain time is v then what will its displacement be in twice of that time?
Input
The input will contain two integers in each line. Each line makes one set of input. These two integers denote the value of v (-100 <= v <= 100) and t(0<=t<= 200) ( t means at the time the particle gains that velocity)
Output
For each line of input print a single integer in one line denoting the displacement in double of that time.

Sample Input
Input
Output
0 0
5 12
0
120

Tóm tắt đề
Cho vận tốc v và thời gian t. Tìm quãng đường s sau thời gian 2 * t

ICE CAVE

You play a computer game. Your character stands on some level of a multilevel ice cave. In order to move on forward, you need to descend one level lower and the only way to do this is to fall through the ice.
The level of the cave where you are is a rectangular square grid of n rows and m columns. Each cell consists either from intact or from cracked ice. From each cell you can move to cells that are side-adjacent with yours (due to some limitations of the game engine you cannot make jumps on the same place, i.e. jump from a cell to itself). If you move to the cell with cracked ice, then your character falls down through it and if you move to the cell with intact ice, then the ice on this cell becomes cracked.
Let's number the rows with integers from 1 to n from top to bottom and the columns with integers from 1 to m from left to right. Let's denote a cell on the intersection of the r-th row and the c-th column as (r, c).
You are staying in the cell (r1, c1) and this cell is cracked because you've just fallen here from a higher level. You need to fall down through the cell (r2, c2) since the exit to the next level is there. Can you do this?
Input
The first line contains two integers, n and m (1 ≤ n, m ≤ 500) — the number of rows and columns in the cave description.
Each of the next n lines describes the initial state of the level of the cave, each line consists of m characters "." (that is, intact ice) and "X" (cracked ice).
The next line contains two integers, r1 and c1 (1 ≤ r1 ≤ n, 1 ≤ c1 ≤ m) — your initial coordinates. It is guaranteed that the description of the cave contains character 'X' in cell (r1, c1), that is, the ice on the starting cell is initially cracked.
The next line contains two integers r2 and c2 (1 ≤ r2 ≤ n, 1 ≤ c2 ≤ m) — the coordinates of the cell through which you need to fall. The final cell may coincide with the starting one.
Output
If you can reach the destination, print 'YES', otherwise print 'NO'.
Sample Input
Input
Output

Input
Output

Input
Output
4 6
X...XX
...XX.
.X..X.
......
1 6
2 2
YES

5 4
.X..
...X
X.X.
....
.XX.
5 3
1 1
NO

4 7
..X.XX.
.XX..X.
X...X..
X......
2 2
1 6
YES
Hint
In the first sample test one possible path is:
After the first visit of cell (2, 2) the ice on it cracks and when you step there for the second time, your character falls through the ice as intended.
Tóm tắt đề

Cho một bảng kích thước N x M. Những ô ‘.’ là những ô băng chưa nứt. Những ô ‘X’ là những ô băng đã nứt. Nếu nhảy lên ô ‘.’ thì băng từ chưa nứt thành băng đã nứt. Còn nếu nhảy lên ô ‘X’ thì băng từ đã nứt thành sụp luôn. Yêu cầu từ ô (r1 c1) hỏi có đường để nhảy đến ô (r2 c2) hay không ? Nhưng mà khi tới được ô (r2 c2) rồi, thì phải nhảy làm sao cho ô (r2 c2) sụp luôn thì mình thắng. Ngược lại thì thua.

SỰ KIỆN


Tinhoclqdkh cảm ơn bạn đã quan tâm và ủng hộ Blog!


(Logo cá nhân)
Đây là một blog dành cho học sinh chuyên Tin học, sinh viên ngành CNTT và tất cả các bạn yêu thích lập trình...
Blog do mình lập nên nhằm mục đích chia sẻ những bài tập tin học mà mình sưu tầm được. Do kiến thức còn hạn chế nên chắc chắn không tránh khỏi sai sót, rất mong nhận được sự góp ý chân thành của bạn, đặc biệt là sự đóng góp về lời giải và Test.

6. Sau 1 thời gian vắng bóng thì Blog tiếp tục cập nhật thêm các bài toán mới. Trong lần quay trở lại này Admin đã cho phép tất cả mọi người lấy CODE, TEST và SOLUTION của tất cả các bài trong Blog.
Cũng trong lần quay lại này còn có sự đóng góp nhiệt tình của Đinh Nguyên Khôi (cựu học sinh chuyên Tin - Lê Quý Đôn Khánh Hòa, hiện là sinh viên khoa CNTT trường KHTN TPHCM). 

5. THÔNG BÁO: Từ bây giờ mình sẽ không đưa Code + Test + Solution lên Blog nữa, tuy nhiên các bạn có thể để lại mail ở phần Comment mình sẽ gửi mail.
4. Sự kiện #04 (17/03/2016): Chia sẻ toàn bộ test+solution+đề bài + code (ĐÃ KẾT THÚC)
Cảm ơn tất cả mọi người đã ủng hộ Blog tinhoclqdkh. Trong thời gian diễn ra sự kiện (kéo dài hơn 2 ngày) Blog đã nhận được sự quan tâm của các bạn. Sự kiện này sẽ QUAY LẠI khi Tinhoclqdkh đạt được 500 bài viết, xen kẽ đó là những sự kiện nhỏ hơn. Các bạn tiếp tục theo dõi nhé!
Kết thúc sự kiện đã có 25 lượt tải về:

Nội dung sự kiện:
Tạm gác lại sự kiện #03Tinhoclqdkh sẽ thực hiện sự kiện #04: Chia sẻ toàn bộ TEST + SOLUTION + ĐỀ BÀI + CODE có trong Blog. Sự kiện này nhằm đánh dấu 1 cột móc quan trọng của Tinhoclqdkh đó là có 100 bài viết. Vẫn biết rằng đây là con số rất khiêm tốn nhưng nó thể hiện sự cố gắng làm việc trong 1 thời gian ngắn và quan trọng nhất là niềm đam mê trong việc học Tin học. Trong tương lai mình rất hy vọng sẽ có được sự hợp tác tích cực của mọi người để Tinhoclqdkh có thêm nhiều bài toán hay cùng chia sẻ với tất cả những người yêu thích Tin học.
TẢI VỀ (đã xóa file)
(1 link duy nhất)
3. Sự kiện #03: (sắp diễn ra) Chia sẻ tài liệu
    Đây là những tài liệu mà mình sưu tầm được trong suốt 5 năm qua, trong đó có nhiều tài liệu hay như sách Giáo trình và giải thuật của thầy Lê Minh Hoàng, Cẩm nang thuật toán, một số vấn đề chọn lọc trong tin học....và nhiều tài liệu khác
      Hoặc có thể tải từng tài liệu dưới đây:
      Mình sẽ Up Link khi thời gian sự kiện bắt đầu
    2. Sự kiện #01: Chia sẻ toàn bộ Code, Test, Solution có trong Blog (Đã kết thúc)
    1. Sự kiện #02: (08-12/03/2016) Chia sẻ toàn bộ Test của các bài tập đồ thị (Đang diễn ra)

    Wet Shark and Bishops

    Today, Wet Shark is given n bishops on a 1000 by 1000 grid. Both rows and columns of the grid are numbered from 1 to 1000. Rows are numbered from top to bottom, while columns are numbered from left to right.
    Wet Shark thinks that two bishops attack each other if they share the same diagonal. Note, that this is the only criteria, so two bishops may attack each other (according to Wet Shark) even if there is another bishop located between them. Now Wet Shark wants to count the number of pairs of bishops that attack each other.
    Input
    The first line of the input contains n (1 ≤ n ≤ 200 000) — the number of bishops.
    Each of next n lines contains two space separated integers xi and yi (1 ≤ xi, yi ≤ 1000) — the number of row and the number of column where i-th bishop is positioned. It's guaranteed that no two bishops share the same position.
    Output
    Output one integer — the number of pairs of bishops which attack each other.
    Examples
    Input
    Output

    Input
    Output
    5
    1 1
    1 5
    3 3
    5 1
    5 5
    6

    3
    1 1
    2 3
    3 5
    0

    Note
    In the first sample following pairs of bishops attack each other: (1, 3)(1, 5)(2, 3)(2, 4)(3, 4) and (3, 5). Pairs (1, 2)(1, 4)(2, 5)and (4, 5) do not attack each other because they do not share the same diagonal.
    Tóm tắt đề:

    Cho N con tượng đứng trên bàn cờ kích thước 1000 x 1000. Hỏi có bao nhiêu cặp
    tượng ăn nhau ?

    Chocolate Bar

    You have a rectangular chocolate bar consisting of n × m single squares. You want to eat exactly k squares, so you may need to break the chocolate bar.
    In one move you can break any single rectangular piece of chocolate in two rectangular pieces. You can break only by lines between squares: horizontally or vertically. The cost of breaking is equal to square of the break length.
    For example, if you have a chocolate bar consisting of 2 × 3 unit squares then you can break it horizontally and get two 1 × 3 pieces (the cost of such breaking is 32 = 9), or you can break it vertically in two ways and get two pieces: 2 × 1 and 2 × 2 (the cost of such breaking is 22 = 4).
    For several given values nm and k find the minimum total cost of breaking. You can eat exactly k squares of chocolate if after all operations of breaking there is a set of rectangular pieces of chocolate with the total size equal to k squares. The remaining n·m - ksquares are not necessarily form a single rectangular piece.
    Input
    The first line of the input contains a single integer t (1 ≤ t ≤ 40910) — the number of values nm and k to process.
    Each of the next t lines contains three integers nm and k (1 ≤ n, m ≤ 30, 1 ≤ k ≤ min(n·m, 50)) — the dimensions of the chocolate bar and the number of squares you want to eat respectively.
    Output
    For each nm and k print the minimum total cost needed to break the chocolate bar, in order to make it possible to eat exactly ksquares.
    Examples
    Input
    Output
    4
    2 2 1
    2 2 3
    2 2 2
    2 2 4
    5
    5
    4
    0
    ote
    In the first query of the sample one needs to perform two breaks:
    ·         to split 2 × 2 bar into two pieces of 2 × 1 (cost is 22 = 4),
    ·         to split the resulting 2 × 1 into two 1 × 1 pieces (cost is 12 = 1).
    In the second query of the sample one wants to eat 3 unit squares. One can use exactly the same strategy as in the first query of the sample.
    Tóm tắt đề

    Cho một thanh sô cô la kích thước n x m. Bạn cần cắt miếng sô cô la này sao cho đúng k ô vuông mà chi phí cắt là nhỏ nhất. Biết rằng miếng sô cô la kích thước i x j, thì khi cắt theo chiều dọc, tức cắt thành 2 miếng u x j và v x j thì chi phí được cộng thêm một lượng là i x i. Còn nếu cắt theo chiều ngang thì chi phí được cộng thêm một lượng là j x j.

    Expression

    Petya studies in a school and he adores Maths. His class has been studying arithmetic expressions. On the last class the teacher wrote three positive integers abc on the blackboard. The task was to insert signs of operations '+' and '*', and probably brackets between the numbers so that the value of the resulting expression is as large as possible. Let's consider an example: assume that the teacher wrote numbers 1, 2 and 3 on the blackboard. Here are some ways of placing signs and brackets:
    ·                     1+2*3=7
    ·                     1*(2+3)=5
    ·                     1*2*3=6
    ·                     (1+2)*3=9
    Note that you can insert operation signs only between a and b, and between b and c, that is, you cannot swap integers. For instance, in the given sample you cannot get expression (1+3)*2.
    It's easy to see that the maximum value that you can obtain is 9.
    Your task is: given ab and c print the maximum value that you can get.
    Input: The input contains three integers ab and c, each on a single line (1 ≤ a, b, c ≤ 10).
    Output:  Print the maximum value of the expression that you can obtain.
    Sample Input:
    Input
    Output

    Input
    Output
    1
    2
    3
    9

    2
    10
    3
    60
    Tóm tắt đề:

    Cho 3 số a , b , c. Yêu cầu đặt các dấu ngoặc , dấu + và dấu * vào sao cho kết quả thu được là lớn nhất.

    Game With Sticks

    After winning gold and silver in IOI 2014, Akshat and Malvika want to have some fun. Now they are playing a game on a grid made of n horizontal and m vertical sticks.
    An intersection point is any point on the grid which is formed by the intersection of one horizontal stick and one vertical stick.
    In the grid shown below, n = 3 and m = 3. There are n + m = 6 sticks in total (horizontal sticks are shown in red and vertical sticks are shown in green). There are n·m = 9 intersection points, numbered from 1 to 9.

    The rules of the game are very simple. The players move in turns. Akshat won gold, so he makes the first move. During his/her move, a player must choose any remaining intersection point and remove from the grid all sticks which pass through this point. A player will lose the game if he/she cannot make a move (i.e. there are no intersection points remaining on the grid at his/her move).
    Assume that both players play optimally. Who will win the game?
    Input
    The first line of input contains two space-separated integers, n and m (1 ≤ n, m ≤ 100).
    Output
    Print a single line containing "Akshat" or "Malvika" (without the quotes), depending on the winner of the game.
    Sample Input
    Input
    Output

    Input
    Output

    Input
    Output
    2 2
    Malvika

    2 3
    Malvika

    3 3
    Akshat
    Hint
    Explanation of the first sample:
    The grid has four intersection points, numbered from 1 to 4.

    If Akshat chooses intersection point 1, then he will remove two sticks (1 - 2 and 1 - 3). The resulting grid will look like this.
    Now there is only one remaining intersection point (i.e. 4). Malvika must choose it and remove both remaining sticks. After her move the grid will be empty.
    In the empty grid, Akshat cannot make any move, hence he will lose.
    Since all 4 intersection points of the grid are equivalent, Akshat will lose no matter which one he picks.



    Tóm tắt đề

    Akshat và Malvika chơi trò rút que. N que đặt ngang và M que đặt dọc tạo thành một lưới ô vuông gồm ác điểm. Mỗi đợt chơi, mỗi người sẽ chọn một điểm và họ sẽ rút những que đi qua điểm đó. Trò chơi kết thúc khi không còn điểm nào và người không chọn được điểm đó là người thua. Akshat đi đầu tiên.