結果
| 問題 | No.652 E869120 and TimeZone | 
| コンテスト | |
| ユーザー |  | 
| 提出日時 | 2018-03-24 18:49:03 | 
| 言語 | C++11(廃止可能性あり) (gcc 13.3.0) | 
| 結果 | 
                                AC
                                 
                             | 
| 実行時間 | 2 ms / 1,000 ms | 
| コード長 | 695 bytes | 
| コンパイル時間 | 386 ms | 
| コンパイル使用メモリ | 55,988 KB | 
| 実行使用メモリ | 6,944 KB | 
| 最終ジャッジ日時 | 2024-06-11 12:24:39 | 
| 合計ジャッジ時間 | 1,225 ms | 
| ジャッジサーバーID (参考情報) | judge3 / judge2 | 
(要ログイン)
| ファイルパターン | 結果 | 
|---|---|
| sample | AC * 5 | 
| other | AC * 30 | 
コンパイルメッセージ
main.cpp: In function ‘int main(int, char**)’:
main.cpp:11:32: warning: format ‘%s’ expects argument of type ‘char*’, but argument 5 has type ‘char (*)[10]’ [-Wformat=]
   11 |         scanf("%02d %02d UTC%c%s",&h,&m,&ch,&UTC);
      |                               ~^            ~~~~
      |                                |            |
      |                                char*        char (*)[10]
main.cpp:11:14: warning: ignoring return value of ‘int scanf(const char*, ...)’ declared with attribute ‘warn_unused_result’ [-Wunused-result]
   11 |         scanf("%02d %02d UTC%c%s",&h,&m,&ch,&UTC);
      |         ~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
            
            ソースコード
#include <iostream>
#include <stdio.h>
#include <string.h>
using namespace std;
int main(int argc, char* argv[])
{
	char T[100];
	int h,m;
	char ch;
	char UTC[10];
	scanf("%02d %02d UTC%c%s",&h,&m,&ch,&UTC);
	float utc;
	int utc_h,utc_m;
	char *p=strchr(UTC,'.');
	if (p){
		*p='\0';
		utc_h=atoi(UTC);
		p++;
		utc_m=atoi(p);
	}else{
		utc_h=atoi(UTC);
		utc_m=0;
	}
	utc_m*=60;
	utc_m/=10;
	if (ch=='-'){
		utc_h=-utc_h;
		utc_m=-utc_m;
	}
	int H=h+(utc_h-9);
	while (H>24){
		H-=24;
	}
	while (H<0){
		H+=24;
	}
	int M=m+(utc_m-0);
	while (M>=60){
		M-=60;
		H++;
	}
	while (M<0){
		M+=60;
		H--;
	}
	while (H>=24){
		H-=24;
	}
	while (H<0){
		H+=24;
	}
	printf("%02d:%02d",H,M);
	return 0;
}
            
            
            
        