ÀÛ¼ºÀÏ : 18-05-11 00:47
°ÝÀÚ»óÀÇ °æ·Î ¸Þ¸ð¸® °ú´Ù
 ±Û¾´ÀÌ : ¾çÁøÇõ(yangjh05)
Á¶È¸ : 2,628  
#include <stdio.h>
#include <algorithm>

using namespace std;

double f(int a){
    if(a == 0) return 1;
    return a*f(a - 1);
}

int main()
{
    int N, M, K;
    double ans;
    scanf("%d %d %d", &N, &M, &K);
    if(K == 0){
        ans = f(N + M - 2) / (f(N - 1) * f(M - 1));
        printf("%d", (int)ans);
    } else {
        int x, y;
        y = (K / M) + 1;
        x = K - M * (y - 1);
        ans = (double)((f(x + y - 2) / (f(x - 1) * f(y - 1))) * (f(M + N - x - y) / (f(M - x) * f(N - y))));
        printf("%d", (int)ans);
    }
    return 0;
}
¸Þ¸ð¸® °ú´Ù°¡ ¾îµð¼­ ÀϾ´ÂÁö ¾Ë°í ½Í¾î¿ä. ½ÇÁ¦ ÇÁ·Î±×·¥Àº 33KB´øµ¥...

¾çÁøÇõ 18-05-11 01:21
 
#include <stdio.h>

int D[40][40];
int x, y;
int N, M, K, ans;

int way(int fx, int fy){
    if(fx == 1 || fy == 1) return 1;
    if(fy > N || fx > M) return 0;
    if(D[fx][fy]) return D[fx][fy];
    return D[fx][fy] = way(fx - 1, fy) + way(fx, fy - 1);
}

int main()
{
    scanf("%d %d %d", &N, &M, &K);
    if(K == 0) ans = way(M, N);
    else {
        double tmp;
        tmp = (double)K / (double)M;
        if(tmp - (int)(K / M) > 0) y = (K / M) + 1;
        else y = K / M;
        x = K - M * (y - 1);
        ans = way(x, y) * way(M - x + 1, N - y + 1);
    }
    printf("%d", ans);
    return 0;
}
ÀÌ°Ô Á¦´ë·Î µÈ ´äÀε¥... ±×°Íµµ ¸ÂÁö ¾Ê³ª¿ä...?
ÄĽºÄð 18-05-17 14:22
 
¾Æ·¡ÀÇ ÇÁ·Î±×·¥Áß

 if(D[fx][fy]) return D[fx][fy];

ÀÌ ºÎºÐÀ» º¸¸é ÇØ´ç À§Ä¡¿¡ ÀÌ¹Ì È£ÃâÇؼ­ °ªÀÌ ±¸ÇØÁø ±â·ÏÀÌ ÀÖÀ¸¸é ´Ù½Ã È£ÃâÇÏÁö ¾Ê½À´Ï´Ù.

ÇÏÁö¸¸ À§ÀÇ ÄÚµå´Â °°Àº À§Ä¡¸¦ °è¼Ó ¹Ýº¹Çؼ­ È£ÃâÀ» ÇÏ°Ô µÇ¹Ç·Î ½ºÅø޸𸮠°ø°£ÀÌ ºÎÁ·ÇÏ°Ô µË´Ï´Ù.
 
 

Total 662
¹øÈ£ Á¦   ¸ñ ±Û¾´ÀÌ ³¯Â¥ Á¶È¸
642 ¼ö°­½Åû ÇÑ µÚ ÀÔ±ÝÇÏ¿´´Âµ¥ 󸮰¡ ¾ÈµÇ¼­ ½ÅûÃë¼ÒÇÏ¿´½À´Ï´Ù¡¦ (1) ¼­Á¤È¯ 09-05 1792
641 254p ¶È°°ÀÌ ÀÔ·Â ÈÄ ÄÚµùÇϴµ¥ Àß ¾ÈµÇ³×¿ä (1) ±èÀºÁÖ 07-21 1999
640 ÀÚ°¡ÁÖµµ C¾ð¾î ¹è¿­2 - ÀÚ°¡Áø´Ü 1 P196 (1) Ȳ¼¼¿µ 07-20 1783
639    ¹Ýº¹Á¦¾î3 ÀÚ°¡Áø´Ü5 ¾î¶»°Ô ÇØ¾ß Çϳª¿ä?? (2) ±è´ëÀÍ 07-17 1784
638 ¹Ýº¹Á¦¾î3 ÀÚ°¡Áø´Ü5 ¾î¶»°Ô ÇØ¾ß Çϳª¿ä?? Ȳ¼¼¿µ 07-17 1759
637    ¹Ýº¹Á¦¾î¹®2 7´Ü¿ø p140 ÀÚ°¡Áø´Ü 6¹®Á¦ÀÔ´Ï´Ù. (1) ±è´ëÀÍ 07-15 1760
636 ÀÚ±âÁÖµµc¾ð¾î/ÆÄÀ̽ã ÇÁ·Î±×·¡¹Ö ±³»ç¿ë ´ä¾ÈÁö ±è´ëÀÍ 07-15 2592
635 ¹Ýº¹Á¦¾î¹®2 7´Ü¿ø p140 ÀÚ°¡Áø´Ü 6¹®Á¦ÀÔ´Ï´Ù. (7) Ȳ¼¼¿µ 07-15 1646
634 ¼ö°­·á ÀÔ±ÝÇÏ¿´½À´Ï´Ù ±èÁ¤¼ö 06-07 1768
633 ¼ö°­·á ÀÔ±ÝÇÏ¿´½À´Ï´Ù. À̿빫 04-19 1974
632 °áÁ¦ °ü·Ã ÁúÀÇ À̿빫 04-19 1849
631 ÀÚ±âÁÖµµ C ¾ð¾î Ã¥ ¸»°í ´Ù¸¥Ã¥ ¾È½Â¹Î 03-24 2089
630 ÀÚ±âÁÖµµ C¾ð¾î ÇÁ·Î±×·¡¹Ö °­ÀǺ¸±â (1) ÀÌ¹Î±Ô 02-17 2171
629 ÀÚ±âÁÖµµ C¾ð¾î ÇÁ·Î±×·¡¹Ö (1) ±èÁö¿ì 02-15 2024
628 °áÁ¦ Çß½À´Ï´Ù. (1) ¿øÅ°æ 10-19 2251
627 °áÁ¦ È®ÀκÎŹµå·¯¿ä ¶ó¼±³à 09-10 2356
626 °áÀçÇß½À´Ï´Ù Ãֹμ® 08-21 2424
625 ÀÚ±âÁÖµµ C¾ð¾î ÇÁ·Î±×·¡¹Ö (2) ±è¹ÎÁö 08-20 2841
624 »çÀÌÆ® ÁÖ¿ä Ãë¾àÁ¡ ÀÌ¿µÁØ 08-03 3025
623 ¿äÁò °­ÀÇ µè±â ¾î·Á¿ö¿ä À̿빫 07-29 2470
 1  2  3  4  5  6  7  8  9  10  11  12  13  14  15  16  17  18  19  20  21  22  23  24  25  26  27  28  29  30    

ȸ»ç¼Ò°³ | °³ÀÎÁ¤º¸Ã³¸®¹æħ | ÀÌ¿ë¾à°ü | ã¾Æ¿À½Ã´Â ±æ | À̸ÞÀÏÁÖ¼Ò ¹«´Ü¼öÁý°ÅºÎ | »ç¾÷ÀÚÁ¤º¸È®ÀÎ
°æ±âµµ ¾È¾ç½Ã µ¿¾È±¸ È£°èµ¿ 1065-10 Çù¼º°ñµåÇÁ¶óÀÚ 601È£ ÇÑÄÄ¿¡µàÄÉÀ̼Ç(ÁÖ) TEL : 031-388-8840 FAX : 031-388-0996
´ëÇ¥ÀÚ : ±èµ¿±Ô »ç¾÷ÀÚ¹øÈ£ : 130-86-02870 Åë½ÅÆǸž÷½Å°í¹øÈ£ : Á¦ 2010-°æ±â¾È¾ç-888È£
COPYTIGHT(C) ÇÑÄÄ¿¡µàÄÉÀ̼Ç(ÁÖ), ALL RIGHT RESERVED.
´ãÀº°­Á : 0