結果
問題 | No.466 ジオラマ |
ユーザー |
|
提出日時 | 2016-12-16 10:55:22 |
言語 | C90 (gcc 12.3.0) |
結果 |
AC
|
実行時間 | 3 ms / 2,000 ms |
コード長 | 1,656 bytes |
コンパイル時間 | 238 ms |
コンパイル使用メモリ | 21,992 KB |
実行使用メモリ | 6,824 KB |
最終ジャッジ日時 | 2024-11-30 10:20:24 |
合計ジャッジ時間 | 3,390 ms |
ジャッジサーバーID (参考情報) |
judge2 / judge4 |
(要ログイン)
ファイルパターン | 結果 |
---|---|
sample | AC * 4 |
other | AC * 83 |
コンパイルメッセージ
main.c: In function ‘main’: main.c:6:9: warning: ignoring return value of ‘scanf’ declared with attribute ‘warn_unused_result’ [-Wunused-result] 6 | scanf("%d %d %d %ld",&a,&b,&c,&d); | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
ソースコード
#include<stdio.h> int main(){ int a,b,c,i,j,k; long d; scanf("%d %d %d %ld",&a,&b,&c,&d); if(c==0){ if(d<(long)(a+b-2)){ printf("-1\n"); }else{ printf("%d %d\n",a+b,a+b-2); for(i=1;i<a;i++){ printf("0 %d\n",1+i); } for(j=1;j<b;j++){ printf("1 %d\n",i+j); } } }else if(c==1){ if(d<(long)(a+b-2) || a+b-2==0){ printf("-1\n"); }else{ printf("%d %d\n",a+b-1,a+b-2); if(a==1){ printf("1 0\n"); for(i=1;i<b-1;i++){ printf("1 %d\n",i+1); } }else if(b==1){ printf("0 1\n"); for(i=1;i<a-1;i++){ printf("0 %d\n",i+1); } }else{ for(i=1;i<a;i++){ printf("0 %d\n",1+i); } for(j=1;j<b;j++){ printf("1 %d\n",i+j-1); } } } }else if(a==c){ if(b==c){ if(d<(long)c) printf("-1\n"); else{ printf("%d %d\n",c,c); printf("0 1\n1 0\n"); for(i=2;i<c;i++){ printf("0 %d\n",i); } } }else{ if(d<(long)(b-1)) printf("-1\n"); else{ printf("%d %d\n",b,b-1); printf("1 0\n"); for(i=1;i<c;i++){ printf("0 %d\n",i+1); } for(j=i+1;j<b;j++){ printf("1 %d\n",j); } } } }else if(b==c){ if(d<(long)(a-1)) printf("-1\n"); else{ printf("%d %d\n",a,a-1); for(i=0;i<c;i++){ printf("%d %d\n",i,i+1); } for(j=i+1;j<a;j++){ printf("0 %d\n",j); } } }else{ if(d<(long)(a+b-c-1) || a==1 || b==1) printf("-1\n"); else{ printf("%d %d\n",a+b-c,a+b-c-1); printf("0 2\n1 2\n"); for(i=2;i<c+1;i++){ printf("%d %d\n",i,i+1); } for(j=0;j<a-c-1;j++){ printf("0 %d\n",i+j+1); } for(k=0;k<b-c-1;k++){ printf("1 %d\n",i+j+k+1); } } } return 0; }