usaco preface

来源:互联网 发布:卡尔曼滤波算法程序 编辑:程序博客网 时间:2024/05/16 15:49
#include<stdio.h>int n,ans[10];char zm[10]={' ','I','V','X','L','C','D','M'};void gw(int nn){if (nn==0) return ;if (nn<=3) ans[1]+=nn;if (nn==4) {ans[1]++;ans[2]++;}if (nn==5) {ans[2]++;}if (nn>5 && nn<=8) {ans[2]++;ans[1]+=nn-5;}if (nn==9) {ans[3]++;ans[1]++;}}void sw(int nn){if (nn==0) return ;if (nn<=3) ans[3]+=nn;if (nn==4) {ans[3]++;ans[4]++;}if (nn==5) {ans[4]++;}if (nn>5 && nn<=8) {ans[4]++;ans[3]+=nn-5;}if (nn==9) {ans[5]++;ans[3]++;}}void bw(int nn){if (nn==0) return ;if (nn<=3) ans[5]+=nn;if (nn==4) {ans[5]++;ans[6]++;}if (nn==5) {ans[6]++;}if (nn>5 && nn<=8) {ans[6]++;ans[5]+=nn-5;}if (nn==9) {ans[7]++;ans[5]++;}}void qw(int nn){if (nn==0) return ;ans[7]+=nn;}int main(){freopen("preface.in","r",stdin);freopen("preface.out","w",stdout);int i,j;scanf("%d",&n);for (i=1;i<=n;i++) {gw(i%10);sw(i/10%10);bw(i/100%10);qw(i/1000);}for (i=1;i<=7;i++) if (ans[i]!=0) printf("%c %d\n",zm[i],ans[i]);return 0;}

1 0
原创粉丝点击