n, m, s = map(int, input().split())
print((0--n // s) * ((n - 1) % s + 1) * (0--m // s) * ((m - 1) % s + 1))
#include <iostream>
#include <string>
#include <cstdlib>
#include <math.h>
#include <algorithm>
#include <iomanip>
using namespace std;
int main() {
std::ios_base::sync_with_stdio(0);
cin.tie(NULL);
long long n, m, c;
cin >> n >> m >> c;
cout << ((n-1)/c+1) * ((n-1)%c+1) * ((m-1)/c+1) * ((m-1)%c+1);
}
232. Implement Queue using Stacks | 844. Backspace String Compare |
20. Valid Parentheses | 746. Min Cost Climbing Stairs |
392. Is Subsequence | 70. Climbing Stairs |
53. Maximum Subarray | 1527A. And Then There Were K |
1689. Partitioning Into Minimum Number Of Deci-Binary Numbers | 318. Maximum Product of Word Lengths |
448. Find All Numbers Disappeared in an Array | 1155. Number of Dice Rolls With Target Sum |
415. Add Strings | 22. Generate Parentheses |
13. Roman to Integer | 2. Add Two Numbers |
515. Find Largest Value in Each Tree Row | 345. Reverse Vowels of a String |
628. Maximum Product of Three Numbers | 1526A - Mean Inequality |
1526B - I Hate 1111 | 1881. Maximum Value after Insertion |
237. Delete Node in a Linked List | 27. Remove Element |
39. Combination Sum | 378. Kth Smallest Element in a Sorted Matrix |
162. Find Peak Element | 1529A - Eshag Loves Big Arrays |
19. Remove Nth Node From End of List | 925. Long Pressed Name |